Правильный способ добавить AutoSuggestBox к навигации по гамбургерам? - PullRequest
0 голосов
/ 18 января 2019

Я только начинаю изучать UWP и xaml.Как правильно добавить AutoSuggestBox на боковую панель навигации?(Извините за неправильное форматирование кода, копирование и вставка были неудачными)

В моем файле Main.xaml есть AutoSuggestArea, для которого я установил Visible

</VisualStateGroup>
  <VisualStateGroup x:Name="AutoSuggestGroup">
    <VisualState x:Name="AutoSuggestBoxVisible"/>
    <VisualState x:Name="AutoSuggestBoxCollapsed">
  <VisualState.Setters>
    <Setter Target="AutoSuggestArea.Visibility" Value="Visible"/>
  </VisualState.Setters>
</VisualState>
</VisualStateGroup>

и в сеткедля AutoSuggestArea я определил AutoSuggestBox

<Grid x:Name="AutoSuggestArea" Height="44" Grid.Row="3" VerticalAlignment="Center">

<ContentControl x:Name="PaneAutoSuggestBoxPresenter" Content="{TemplateBinding AutoSuggestBox}" HorizontalContentAlignment="Stretch" IsTabStop="False" Margin="16,0,16,0" VerticalContentAlignment="Center"/>

<Button x:Name="PaneAutoSuggestButton" Content="&#xE11A;" MinHeight="44" Style="{TemplateBinding PaneToggleButtonStyle}" Visibility="Collapsed" Width="{TemplateBinding CompactPaneLength}"/>

    <AutoSuggestBox Width="234" VerticalAlignment="Center" 
       HorizontalAlignment="Center"
       PlaceholderText="Search" Name ="boxS"                            
       QuerySubmitted="AutoSuggestBox_QuerySubmitted" 
       TextChanged="AutoSuggestBox_TextChanged">
        <AutoSuggestBox.TextBoxStyle>
          <Style TargetType="TextBox">
          <Setter Property="IsHandwritingViewEnabled" Value="False"/>
          <Setter Property="BorderThickness" Value="0"/>
        </Style>
      </AutoSuggestBox.TextBoxStyle>
        <AutoSuggestBox.QueryIcon>
          <SymbolIcon Symbol="Find" Foreground="Black">                                                   
             <SymbolIcon.RenderTransform>
             <CompositeTransform ScaleX="1" ScaleY="1"/>                                         
             </SymbolIcon.RenderTransform>
          </SymbolIcon>
       </AutoSuggestBox.QueryIcon>
    </AutoSuggestBox>
</Grid>

. То, что я хочу, - это в основном идентичное поведение в качестве приложения Groove Music в Windows, где панель поиска исчезает, когда навигационное представление закрыто или свернуто.

Вместо этого я получаю это

1 Ответ

0 голосов
/ 18 января 2019

Я предполагаю, что вы имели в виду NavigationView NavigationPanel.

Это не то, как вы положили AutoSuggestBox в NavigationView. NavigationView имеет свойство NavigationView.AutoSuggestBox. Вы просто устанавливаете AutoSuggestBox для этого свойства, и все будет работать как положено. Как это:

<NavigationView>
    <NavigationView.AutoSuggestBox>
        <AutoSuggestBox x:Name="NavViewSearchBox" QueryIcon="Find"/>
    </NavigationView.AutoSuggestBox>
</NavigationVew>

Вам не нужно скрывать / показывать это AutoSuggestBox самостоятельно. NavigationView автоматически сделает это за вас. Кроме того, вам не нужно помещать AutoSuggestBox внутри какой-либо сетки или чего-либо еще.

...