【发布时间】:2016-06-17 15:47:14
【问题描述】:
我想根据屏幕大小更改StackPanel 的方向。
我一直在关注this answer,但还没有开始工作。
这是我目前得到的:
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="SharedVisualStates">
<VisualState x:Name="DefaultLayout">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="720" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="GuidesList.Style" Value="{StaticResource DefaultGuidesList}" />
</VisualState.Setters>
</VisualState>
<VisualState x:Name="NarrowLayout">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="0" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="GuidesList.Style" Value="{StaticResource NarrowGuidesList}" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Page.Resources>
<Style x:Key="DefaultGuidesList" TargetType="StackPanel" >
<Setter Property="Orientation" Value="Horizontal"/>
</Style>
<Style x:Key="NarrowGuidesList" TargetType="StackPanel" >
<Setter Property="Orientation" Value="Vertical"/>
</Style>
</Page.Resources>
<StackPanel
x:Name="GuidesList">
<StackPanel ... />
<StackPanel ... />
</StackPanel>
有什么想法吗?
【问题讨论】:
标签: xaml uwp visualstatemanager