Programmierung

WPF-Projekte

WPF-Komponenten und Ereignishandler

image.jpg

© PC Magazin

WPF-Projekt: Sie entwickeln die Anwendung parallel im Designer und im XAML-Code.

Ein WPF-Projekt verfügt über die wesentlichen Steuerelemente, die Sie schon von den Windows Forms her kennen und noch einige mehr. In der Toolbox erscheinen standardmäßig nicht alle. Weitere fügen Sie der Toolbox hinzu, indem Sie diese mit der rechten Maustaste anklicken und im Kontextmenü den Befehl Elemente auswählen... verwenden. Es erscheint der Dialog Toolboxelemente auswählen wie im Bild. Setzen Sie hier vor den Steuerelementen, die Sie benötigen, ein Häkchen und bestätigen Sie mit OK.

Zur Demonstration schreiben Sie ein kleines Zeichenprogramm. Fügen Sie Ihrer Toolbox ein InkCanvas-Steuerelement hinzu. Die Komponenten sind im Dialog Toolboxelemente auswählen alphabetisch angeordnet. Wenn Sie nach unten scrollen, sehen Sie dieses Steuerelement. Ziehen Sie das InkCanvas-Steuerelement aus der Toolbox auf den Designer. Passen Sie die Größe des InkCanvas-Steuerelements an und heben Sie es farblich vom Fenster-Hintergrund ab.

Bearbeiten Sie dazu die Eigenschaft Background für das Grid und für das InkCanvas-Steuerelement. Ein InkCanvas-Steuerelement bzw. die Klasse InkCanvas definiert einen Bereich, der Freihandstriche empfängt und anzeigt. Diese Funktionalität ist für die Komponente implementiert, sodass Sie dafür nichts mehr tun müssen.

image.jpg

© PC Magazin

Toolbox-Elemente auswählen: In diesem Dialog fügen Sie der Toolbox WPF-Komponenten hinzu.

Ziehen Sie ein Button-Steuerelement in das Designer-Fenster, das Sie unter dem InkCanvas-Steuerelement positionieren. Um die Schaltfläche mit Löschen zu beschriften, weisen Sie der Eigenschaft Content im Eigenschaftenfenster den Wert "Löschen" zu oder Sie bearbeiten im WPF-Designer das XAML-Attribut per <Button Content="Löschen" ... />.

Auf Ereignisse reagieren Sie im Code wie bei Windows-Forms-Anwendungen. Selektieren Sie in der Entwurfsoberfläche das Steuerelement und klicken Sie im Register Ereignisse des Eigenschaftenfensters doppelt auf das Ereignis, das Sie bearbeiten wollen.

Visual 2010 Express generiert den Ereignishandler und präsentiert das Grundgerüst der Methode. Für C# finden Sie die Ereignismethoden in der Datei MainWindows.xaml.cs. Um einen Ereignishandler für das Click-Ereignis einer Schaltfläche zu generieren, klicken Sie das Button-Steuerelement im Designer doppelt an. Fügen Sie der Click()-Ereignismethode nun die Anweisung inkCanvas1.Strokes.Clear() hinzu.

private void button1_Click
(object sender, RoutedEventArgs e)
{ inkCanvas1.Strokes.Clear(); }

Bei der Eigenschaft Strokes der InkCanvas-Klasse handelt es sich um eine Auflistung vom Typ StrokeCollection, welche alle gezeichneten Freihandstriche abruft. Diese Klasse verfügt über die Methode Clear(), um alle Elemente aus der Collection zu entfernen. Das Ergebnis leert die Leinwand, womit der Nutzer Neues malt, indem er auf Löschen klickt. Die Beispielanwendung erhalten Sie unter http://downloads.magnus.de/heft-addons/download/visual-studio-mit-net-fr amework-4-0.html .

Mehr zum Thema

HTML 5
Webgestaltung

Google Web Designer ist spezialisiert auf HTML5. Ein Vorteil dieses Standards ist das einfache Einbinden von Videos mit dem Element video. Wir zeigen…
Wir verraten, wie Sie Fritzboxen und andere Router vor Hackern schützen.
Fritzbox, Asus, Belkin und Co.

Fritzbox, Asus, Belkin oder DLink - die Liste der geknackten Router ist lang. Hacker stahlen Passwörter oder NAS-Daten. So machen Sie Ihren Router…
Wir führen Sie zur eigenen Windows-App - unserem PC-Magazin-RSS-Feed.
C# und XAML

Wir zeigen, wie Sie Windows 8.1 Apps selbst programmieren können. Lernen Sie das App erstellen an Hand unseres Beispiels: dem RSS-Feed von PC…
Windows Tipps & Tricks: Benutzerrechte unter Windows 8.1
Programme richtig installieren

Wir zeigen Ihnen, wie Sie sich unter Windows 8.1 alle Benutzerrechte verschaffen und Programme richtig installieren.
Windows 8: Starbildschirm
Microsoft Project Siena

Erstellen Sie sich selbst eine App für Windows 8, die auf alle Funktionen Ihres Tablets zugreifen kann, inklusive Kamera, Mikrofon und Lautsprecher.…