In der XAML Expertise wurde bereits das kostenlose UI-Framework MahApps.Metro vorgestellt [1]. Es wurde jetzt durch das neue Dialogfenster SimpleChildWindow und den ChildWindowManager erweitert.
Das neue SimpleChildWindow von MahApps.Metro
Dadurch lassen sich Dialogfenster im Windows-10-Design innerhalb der eigenen WPF-Anwendung bereitstellen. Wie Listing 1 zeigt, wird das ChildWindow wie ein Steuerelement innerhalb der gewünschten Seite deklariert. Zum Öffnen des Fensters wird dann der ChildWindowManager via Code angesteuert (Listing 2). In Abbildung 1 ist das Ergebnis zu erkennen. Weitere Informationen zum neuen SimpleChildWindow gibt es auf GitHub.
<simpleChildWindow:ChildWindow IsOpen="{Binding IsChildWindowOpenOrNotProperty}" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" Padding="15" ChildWindowImage="Error" Title="TestChild 1"> <Grid> </Grid> </simpleChildWindow:ChildWindow>
public static Task ShowChildWindowAsync(this MetroWindow window, ChildWindow dialog, OverlayFillBehavior overlayFillBehavior = OverlayFillBehavior.WindowContent) private async void OpenAChildWindow_OnButtonClick(object sender, RoutedEventArgs e) { // opens a cool child window await this.ShowChildWindowAsync(new CoolChildWindow() { IsModal = false }); }
Literaturverzeichnis
[1] Biswanger, Gregor: „Windows-10-Design für WPF-Anwendungen“, Windows Developer 4.16
Windows Developer
Dieser Artikel ist im Windows Developer erschienen. Windows Developer informiert umfassend und herstellerneutral über neue Trends und Möglichkeiten der Software- und Systementwicklung rund um Microsoft-Technologien.
Natürlich können Sie den Windows Developer über den entwickler.kiosk auch digital im Browser oder auf Ihren Android- und iOS-Devices lesen. Außerdem ist der Windows Developer weiterhin als Print-Magazin im Abonnement erhältlich.
Modul ADOC – Architekturdokumentation – Softwarearchitekturen festhalten und kommunizieren
mit Stefan Zörner (embarc)
Modul FLEX – Flexible Architekturen: Microservices, Self-contained Systems und Continuous Delivery
mit Eberhard Wolff oder Niko Will (INNOQ)