如何旋转WPF窗口?

是否可以使用xaml将WPF窗口旋转45度?

第一个问题:为什么要旋转整个窗口?

如果你真的需要它:
您无法旋转正常的WPF窗口。 请参阅: 旋转窗口

您必须创建一个无边框窗口并为其提供UI。 请参阅: 自定义窗口框架的WPF非客户区设计技术

对于旋转窗口外观:
组:

  • AllowTransparency属性为true。
  • WindowStyle为None以删除窗口镶边
  • 透明的背景

包含边框(或任何有意义的内容,如矩形,圆形,椭圆等)作为窗口的内容和边框的以下属性:

  • 白色背景(或任何不透明的颜色)
  • 旋转变换,和
  • 较小的尺寸(以便在窗户内旋转时适合)。

Border将为您的窗口提供UI。

注意创建自己的无边框窗口的cavaets,因为它要求你提供窗口界面,如最小化,最大化,关闭按钮; 并且可能需要一些非托管代码。
此外,在下面的示例代码中,旋转时的边框必须保持在窗口的边界内,否则它(和您的自定义窗口)将被修剪。

示例代码

                  

据我所知,您不能旋转整个窗口,但您可以将窗口内的所有内容放入自定义控件并应用RenderTransform对象应用于自定义控件。

示例(有点简单):

http://www.codeproject.com/KB/WPF/TransformationsIntro.aspx

– 丹