2017-09-29 4 views
0

Je développe actuellement une application UWP (Windows 10), et je suis coincé avec le développement d'un panneau de configuration pour mon application.SettingsFlyout pour UWP (Windows 10)

Je comprends qu'il n'y a pas plus SettingsFlyout comme celui-ci pour les fenêtres UWP 10

Settings flyout

Cependant, je aime vraiment l'apparence de celui-ci. Par conséquent, est-ce qu'il y a des manières que je pourrais développer un settingsflyout d'uwp?

Répondre

1

Vous pouvez utiliser le SplitView control et définir sa propriété DisplayMode à Overlay et la propriété PanePlacement-Right.

<SplitView x:Name="SV_SettingsMenu" 
      DisplayMode="Overlay" 
      PanePlacement="Right" 
      > 
    <SplitView.Pane> 
     <StackPanel> 
      <Button Content="Button 1" HorizontalAlignment="Stretch"/> 
      <Button Content="Button 2" HorizontalAlignment="Stretch"/> 
      <Button Content="Button 3" HorizontalAlignment="Stretch"/> 
     </StackPanel> 
    </SplitView.Pane> 

    <StackPanel Padding="10"> 
     <Button Click="ToggleSettings"> 
      <SymbolIcon Symbol="Setting"/> 
     </Button> 

     <TextBlock Text="Content"/> 
    </StackPanel> 
</SplitView> 


private void ToggleSettings(object sender, RoutedEventArgs e) 
{ 
    SV_SettingsMenu.IsPaneOpen = !SV_SettingsMenu.IsPaneOpen; 
} 

Preview

+0

Salut! Merci pour cette merveilleuse suggestion! Cependant, par hasard, savez-vous s'il est possible d'ajouter un en-tête/titre dans un splitview? Tout comme le settingsflyout? – thalassophile

+0

Vous pouvez ajouter n'importe quel élément XAML à la propriété 'Pane', dans l'exemple' StackPanel' et vous pouvez créer un en-tête. –

+0

Très bien! Merci pour la réponse! :) – thalassophile

1

Je ne vous donne pas le code complet, mais j'espère que cela vous donne la bonne direction:

  1. Concevoir une mise en page de grille similaire à des paramètres icône déroulante.

  2. Utilisez PaneThemeTransition pour obtenir Ajout/Suppression de la grille de l'animation par programmation droit

  3. .

+0

Pouvez-vous donner un exemple simple, s'il vous plaît? Ou presque, pointez-moi à un valide ... –