【问题标题】:Adaptive AutoSuggestBox in UWPUWP 中的自适应 AutoSuggestBox
【发布时间】:2017-07-27 13:10:22
【问题描述】:
【问题讨论】:
标签:
xaml
uwp
windows-10-universal
uwp-xaml
【解决方案1】:
我希望它在 NarrowViewState 中看起来像一个按钮。
我认为使用VisualStateManager 可以达到预期的效果。
对于您的方案,您可以使用 MinWindowWidth AdaptiveTrigger 将 AutoSuggestBox 变成 NarrowViewState 中的按钮。你可以试试下面的代码或者参考我上传的project。
<StackPanel
x:Name="LayoutRoot"
Height="640"
VerticalAlignment="Bottom"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<AutoSuggestBox
x:Name="SuggestBox"
PlaceholderText="Search some info!"
QueryIcon="AlignRight" />
<Button x:Name="SearchBtn" Content="SearchButton">
<Button.Flyout>
<Flyout Placement="Bottom">
<StackPanel>
<AutoSuggestBox x:Name="MiniSuggsetBox" PlaceholderText="search some info..." />
</StackPanel>
</Flyout>
</Button.Flyout>
</Button>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="WindowStates">
<VisualState x:Name="Normal">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="600" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="SuggestBox.Visibility" Value="Visible" />
<Setter Target="SearchBtn.Visibility" Value="Collapsed" />
</VisualState.Setters>
</VisualState>
<VisualState x:Name="Hide">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="0" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="SuggestBox.Visibility" Value="Collapsed" />
<Setter Target="SearchBtn.Visibility" Value="Visible" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</StackPanel>
这个截图