方向改变时更改WPF布局的最佳方法是什么?

时间:2016-05-20 11:38:18

标签: wpf xaml user-interface layout storyboard

我的UI必须随着屏幕的方向而改变。特别是我必须更改grid.rows / columns-property和我的控件的allignment。从我的控件改变位置的动画会很好,但它没有必要。 对我来说更重要的是我有一个简短而清晰的代码。

我有一些方法但可能有更多或更好的方法。

  1. 我为每个方向状态创建了一个额外的视图。 (这会产生双重代码 - 可能不是很好,或者是吗?)
  2. 像Storyboard这样的东西我可以用XAML改变控件的位置。 (我不知道如何更改grid.row和与故事板对齐 - 它实际上是否可能?)
  3. 通过C#代码更改它。 (但我认为这不是一个合适的WPF风格?)
  4. 可能是一个例子。

    Thx Stefan

1 个答案:

答案 0 :(得分:0)

例如,您可以使用RotateTransform在方向更改时旋转视图。

另一种方法: 由于您尝试使用Grid.RowGrid.Column交换,我建议您使用StackPanel,您只需将Orientation依赖项属性设置为HorizontalVertical

注意:你是对的,我不建议使用C#代码来解决这个问题,因为这是View方面的情况,而不是Model方面的情况。 (分离关注点。)