WPF und MVVM mit Visual Studio 2017

In diesem Seminar wird die Programmierung und Visual Studio 2017 umfassend und kompakt vorgestellt. Es richtet sich an Software-Entwickler in Firmen, die C# für den professionellen Einsatz lernen wollen.

Inhalt

Die Inhalte können an die Wünsche der Teilnehmer angepasst werden.

1 Elementare WPF-Konzepte: Ein erstes kleines Programm

2 Die üblichen Steuerelemente (Common Controls)

2.1 Die Klasse MainWindow und der Zugriff auf Steuerelemente
2.2 Labels, Datentypen und Compiler-Fehlermeldungen
2.3 Methoden und das Steuerelement TextBox
2.4 Vererbung und Komposition bei ListBox und ComboBox
2.5 Buttons und Ereignisse
2.5.1 Parameter der Ereignisbehandlungsmethoden
2.5.4 Verschachtelte Steuerelemente: Buttons mit Bildern
2.5.5 Die Weiterleitung von Ereignissen bei verschachtelten Steuerelementen
2.5.6 Die Basisklasse ButtonBase
2.6 CheckBoxen, RadioButtons
2.7 Container-Steuerelemente: GroupBox und TabControl
2.8 Hauptmenüs und Kontextmenüs
2.9 Standarddialoge
2.10 Modale Dialoge

3 XAML

3.1 Die XML-Syntax für XAML
3.1.1 XML-Elemente, XML-Attribute und die erzeugten C#-Objekte
3.1.2 Namensbereiche: Ein erster Einblick
3.1.3 Kommentare
3.1.4 XML-Steuerzeichen
3.2 Die Code-Behind Klasse
3.3 Stammelemente
3.3.1 Window-basierte WPF-Anwendungen
3.3.2 Page-basierte WPF-Anwendungen
3.4 Namensbereiche
3.4.1 Die Elemente der Namensbereichs ../presentation
3.4.2 Die Elemente des Namensbereichs ../xaml
3.4.3 CLR-Namensbereiche
3.4.4 mc:Ignorable
3.5 Objekteigenschaften in XAML setzen
3.5.1 Die Attribut-Syntax
3.5.2 Die Property-Element Syntax
3.5.3 Default-Eigenschaften und die Content-Property
3.5.4 Die Attached Property Syntax
3.5.5 Eventhandler
3.6 Typkonversionen in XAML
3.6.1 Typkonverter
3.6.2 Markup-Extensions
3.7 Baumstrukturen
3.8 Das XAML Serialisierungsformat

4 Commands

4.1 Das Interface ICommand
4.2 Vordefinierte Commands
4.3 Ein Command für mehrere Steuerelemente
4.4 Steuerelemente mit eingebauten Commands

5 Layout-Container

5.1 Gemeinsamkeiten der Layout-Container
5.2 Einfache Layout-Container
5.2.1 StackPanel
5.2.2 WrapPanel
5.2.3 UniformGrid
5.3 Grid
5.3.1 Ein Grid ohne Zeilen- und Spaltendefinitionen
5.3.2 Ein Grid mit Zeilen und Spalten
5.3.3 Zeilen und Spalten zusammenfassen
5.3.4 Relative Zeilen- und Spaltengrößen
5.3.5 Variable Zeilen- und Spaltengrößen mit einem GridSplitter
5.4 DockPanel
5.4.1 Ein DockPanel mit einer ToolBar, einer Statusbar und einem Menu119
5.4.2 Ein DockPanel mit einem zweispaltigen Grid wie im Windows Explorer 119
5.4.3 Ein DockPanel mit einem TabControl
5.4.4 Eine DialogBox
5.5 Canvas und 2D-Grafiken

6 Die Gestaltung von Oberflächen mit Blend

7 Dependency Properties

7.1 Vorteile von Dependency Properties gegenüber gewöhnlichen Eigenschaften
7.1.1 Speicherersparnis
7.1.2 Dynamische Eigenschaften
7.2 Die Definition und Registrierung einer Dependency Property
7.3 Metadaten von Dependency Properties

8 Ressourcen

8.1 File Ressourcen
8.2 Objekt Ressourcen
8.2.1 Ressourcen Collections
8.2.2 Ressourcen-Hierarchien
8.2.3 Der Zugriff auf System-Ressourcen
8.2.4 Der Zugriff auf Ressourcen im Code
8.3 Ressourcen-Dictionaries
8.3.1 Die Definition und Verwendung von Ressource Dictionaries
8.3.2 Ressourcen in mehreren Assemblies verwenden

9 Styles

9.1 Eigenschaften in Styles setzen und verwenden
9.2 Styles für bestimmte Klassen und Style-Hierarchien
9.3 EventSetter, Trigger und EventTrigger

10 Datenbindung

10.1 Datenbindung an Elemente (Element Binding)
10.1.1 Der Bindungsausdruck
10.1.2 Bindungsfehler
10.1.3 Bindungsrichtungen
10.1.4 Bindungen im Code Behind
10.2 Konverter
10.2.1 Die StringFormat Eigenschaft zur Formatierung von vordefinierten Datentypen
10.2.2 ValueConverter (IValueConverter implementieren) – BoolToVisibleConverter
10.3 Binden an Collections von Objekten
10.3.1 Daten aus einer Collection mit einer ItemSource darstellen
10.3.2 Vorlagen zur Formatierung von Daten (Data Templates)
10.3.3 Der DataContext
10.3.4 Den Inhalt der Collection verändern mit ObservableCollection
10.3.5 An einen LINQ-Ausdruck binden
10.3.6 Change Notification (INotifyPropertyChanged)

11 MVVM

11.1 Ein minimales Beispiel
11.2 Das Model
11.3 Der View
11.4 Das Viewmodel

12 Multimedia

12.1 2D-Grafik
12.2 3D-Grafik

Beurteilungen von Teilnehmern dieses Seminars:

Organisatorisches:

Zielgruppe: Software-Entwickler, die lernen wollen, wie man in Visual Studio Benutzeroberflächen mit WPF erstellt und dabei das MVVM Pattern umsetzt.

Voraussetzungen: Gute C#-Kenntnisse

Methodik: Vortrag mit vielen Übungen, in denen die Teilnehmer praxisnahe Programme entwickeln.

Manuskript: Ausführliche und detaillierte Schulungsunterlagen (ca. 200 Seiten)

Ort und Zeit: Dieses Seminar wird als Firmenseminar (inhouse) angeboten.

Dauer: 5 Tage

Dozent: Prof. Richard Kaiser führt seit vielen Jahren Seminare für Firmen durch, vor allem über Software-Entwicklung und die Programmiersprachen C#/C++/C. Zu seinen Kunden gehören renommierte Weltkonzerne und kleine und mittelständische Unternehmen. Er ist der Verfasser der Bücher „C++ mit Visual Studio 2017“ und „C++ mit Microsoft Visual C++ 2008“. Er war viele Jahre Mitglied im DIN Normierungsausschuss Informationstechnik NI-22.

Öffentliche Seminare von Prof. Kaiser finden Sie bei der Technischen Akademie Esslingen.

Beurteilungen der Seminare durch die Teilnehmer finden Sie hier.

Kontakt: Richard Kaiser, Schwärzlocher Straße 53, 72070 Tübingen, .img, .img@.img