19.5 Dateien einer WPF-Anwendung
In diesem Abschnitt wollen wir uns einmal die vier Projektdateien Application.xaml, Application.xaml.vb, Windows1.xaml und Windows1.xaml.vb für eine Anwendung namens WpfApplication1 näher ansehen.
19.5.1 Window1.xaml
In dieser Datei steckt der XAML-Code, den Sie im unteren Bereich des Codeeditors finden.
<Window x:Class="WpfApplication1.Window1" xmlns=http://schemas.microsoft.com/winfx/2006/xaml/presentation xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml Title="Window1" Height="300" Width="300"> <Grid> </Grid> </Window>
In der ersten Zeile wird mit x:Class="WpfApplication1.Window1 der Bezug zum Visual Basic-Code hergestellt. Dahinter sind mit xmlns zwei Namensräume angegeben, denen mit Title die Beschriftung der Titelleiste folgt. Height und Width legen die Ausgangsgröße des Fensters fest.
Alle Steuerelemente sollten sich innerhalb eines Layout-Containers befinden. Die Vorgabe Grid können Sie ersetzen. Container werden in Kapitel 20 besprochen.
19.5.2 Window1.xaml.vb
In Window1.xaml.vb wird der zur XAML-Datei gehörige Programmcode geschrieben. Die Datei wird auch als Code-Behind-Datei bezeichnet. Wie üblich werden Sie hier die Ereignishandler implementieren, Eigenschaften und Felder codieren usw. – analog zu Windows-Forms-Anwendungen.
Class Window1 EndC lass
19.5.3 Application.xaml
Auch zur Datei Application.xaml gehört eine Code-Behind-Datei, die im Attribut x:Class angegeben wird. Mit xmlns werden zwei Namensräume angegeben, und das Attribut Start-upUri gibt an, mit welchem Fenster die Anwendung gestartet werden soll.
<Application x:Class="Application" xmlns=http://schemas.microsoft.com/winfx/2006/xaml/presentation xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml StartupUri="Window1.xaml"> <Application.Resources> </Application.Resources> </Application>
Im Bereich Application.Resources können Sie anwendungsweit bekannte Ressourcen eintragen (siehe Abschnitt 22.2, »Ressourcen«).
19.5.4 Application.xaml.vb
Application.xaml.vb ist die Code-Behind-Datei zu Application.xaml. Sie erweitert die Klasse Application und weist noch keinen Code auf. Die Klasse Application veröffentlicht Eigenschaften und löst Ereignisse aus, auf die Sie hier reagieren können.
Class Application ' Ereignishandler auf Anwendungsebene wie Startup, Exit End Class
19.5.5 Window1.baml und Window1.g.vb
Nachdem Sie die WPF-Anwendung kompiliert haben, sind im Ordner \obj\Debug Dateien mit den Endungen .baml und .g.vb vorhanden. Die .baml-Dateien (Binary Application Markup Language) sind binäre Ausgaben der einzelnen XAML-Dateien. Sie werden als Ressourcen in die Anwendung gelinkt.
Für jedes Fenster wird eine eigene .g.vb-Datei erzeugt. Sie enthält die Klassendefinition in der jeweiligen Programmiersprache. Dateien dieses Typs stellen somit den Zusammenhang zwischen den XAML-Komponenten und der jeweiligen Klasse her.
19.5.6 MyWpfExtension.vb
Die Datei MyWpfExtension.vb befindet sich im Verzeichnis My Project/MyExtensions und definiert ein Modul MyWpfExtension im Namensraum My. Der Typ stellt Referenzen auf die Anwendung (Application), den Rechner (Computer), die Protokolldatei (Log), den eingeloggten Benutzer (User) sowie die Fensterliste (Windows) zur Verfügung. Außerdem erweitert sie die Klasse Application um die Eigenschaft Info.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.