旋转WPF控件或更改屏幕方向

时间:2015-04-22 19:36:59

标签: wpf user-controls rotation window orientation

我有一个带有一个Window(MainWindow)的wpf项目。根据配置文件,它显示两个UserControl中的一个作为内容。它可以是水平(1920x1080)控制或垂直(1080x1920)控制。横向屏幕很好,但是当我想要垂直加载时:

1)将窗口/控制旋转270度 2)改变主屏幕方向

我更喜欢只旋转应用程序而不与Windows API交互。我无法手动更改方向,因为我只能远程访问此计算机。

1 个答案:

答案 0 :(得分:1)

您无法旋转Window对象本身,因为它由Windows内置的窗口管理系统定位。但是,您可以在窗口内转换(并因此旋转)任何FrameworkElement。这包括但不限于GridButtonTextBox元素。

您需要做的就是编辑要旋转的元素上的LayoutTransform属性,这很可能是窗口中的根元素。将旋转设置为270 / -90度,WPF将自动旋转UI。

因为您使用的是LayoutTransform属性,所以布局系统还会正确缩放您的UI。 RenderTransform属性导致控件首先被渲染,然后被旋转。