【问题标题】:Adaptive AutoSuggestBox in UWPUWP 中的自适应 AutoSuggestBox
【发布时间】:2017-07-27 13:10:22
【问题描述】:

我已经在 UWP 应用程序中实现了一个 AutoSuggestBox(用于搜索),如下面的屏幕截图所示,我正在尝试使其具有自适应性,但我还没有找到方法。我希望它在 NarrowViewState 中看起来像一个按钮,如下所述:https://docs.microsoft.com/en-us/windows/uwp/controls-and-patterns/search#Implementation

【问题讨论】:

    标签: 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>
    

    这个截图

    【讨论】:

    猜你喜欢
    • 2018-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-24
    • 2015-11-29
    • 2016-04-09
    • 2016-02-23
    • 2017-10-27
    相关资源
    最近更新 更多