2017-09-29 7 views
0

Ich entwickle gerade eine UWP (Windows 10) -Anwendung, und ich bin dabei, ein Einstellungsfenster für meine Anwendung zu entwickeln.SettingsFlyout für UWP (Windows 10)

Ich verstehe, dass es nicht mehr SettingsFlyout, wie dies für UWP Fenster ist 10

Settings flyout

Aber ich mag das Aussehen und das Gefühl davon. Gibt es also irgendwelche Möglichkeiten, wie ich ein Settingsflyout von uwp entwickeln könnte?

Antwort

1

können Sie die SplitView control nutzen und dessen DisplayMode Eigenschaft auf Overlay und der PanePlacement Eigenschaft 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

Hallo! Danke für den wunderbaren Vorschlag! Wie auch immer, wissen Sie, ob es möglich ist, einen Header/Titel in einer Splitview hinzuzufügen? Genau wie das Settingsflyout? – thalassophile

+0

Sie können der Eigenschaft 'Pane' ein beliebiges XAML-Element hinzufügen, im Beispiel ist es' StackPanel', und Sie können eine Kopfzeile erstellen. –

+0

In Ordnung! Danke für die Antwort! :) – thalassophile

1

Ich gebe Ihnen nicht den vollständigen Code, aber ich hoffe, dass diese Ihnen die richtige Richtung gibt:

  1. Entwerfen Sie ein Grid-Layout ähnlich dem Flyout-Einstellungen.

  2. Verwenden PaneThemeTransition die Animation erhalten rechts

  3. Add/das Gitter programmatisch entfernen.

+0

Können Sie ein einfaches Beispiel, bitte? Oder fast, zeigen Sie mich auf eine gültige ... –