当方向改变时,改变WPF布局的最佳方法是什么?
我的UI必须随着屏幕的方向而改变。特别是我必须更改grid.rows/columns-property和控件的对齐方式。从我的控制位置变化的动画将是很好的,但它不必。 对我来说更重要的是,我有一个简短而清晰的代码 我有一些方法,但可能有更多或更好的方法当方向改变时,改变WPF布局的最佳方法是什么?,wpf,xaml,user-interface,layout,storyboard,Wpf,Xaml,User Interface,Layout,Storyboard,我的UI必须随着屏幕的方向而改变。特别是我必须更改grid.rows/columns-property和控件的对齐方式。从我的控制位置变化的动画将是很好的,但它不必。 对我来说更重要的是,我有一个简短而清晰的代码 我有一些方法,但可能有更多或更好的方法 我为每个方向状态创建一个额外的视图。(这会产生双重代码-可能不是很好,或者是吗?) 类似于故事板,在这里我可以使用XAML更改控件的位置。(我不知道如何更改grid.row和与故事板的对齐方式-这真的可能吗?) 用C代码更改它。(但我认为这不是一
Grid.Row
和Grid.Column
交换,我建议您使用StackPanel
,您只需将方向
依赖属性设置为水平
或垂直
注意:你是对的,我不建议使用C代码来解决这个问题,因为这是在
视图
一侧的情况,而不是在模型
一侧。(关注点分离。)如果旋转视图,还必须向后旋转视图的所有元素,因为Windows也会旋转屏幕。UI上有很多控件,我想代码会变得混乱。使用Stackpanel是一个有趣的想法,在我的情况下,它可能会起作用。但我认为这并不总是一种选择,所以也许还有其他方法可以做到这一点?