WPF verständlich und anhand von Praxisbeispielen erklärt
Autor: Sascha Patschka
Inhaltsverzeichnis (inkrementell)
___1. Vorstellung
_____1.1 Einleitung
_____1.2 Aufbau der Tutorialreihe
___2. Grundlagen der WPF
_____2.1 Einführung in die WPF
________2.1.1 Die wichtigsten Controls und deren Verwendung
______________2.1.1.1 Videocast: Die wichtigsten Controls und ihr Verhalten
______________2.1.1.2 Videocast: Style, Templates und Trigger
______________2.1.1.3 Videocast: Controls eine neue Optik verpassen
________2.1.2 XAML Namespaces
______________2.1.2.1 Kurze Theorie
______________2.1.2.2 Anwendung interessanter Namespaces
______________2.1.2.3 Eigene Namespaces erstellen und integieren
________2.1.3 Resourcen
______________2.1.3.1 Was sind Resourcen, was bringen sie mir
______________2.1.3.2 Unterschied StaticResource und DynamicResource
________2.1.4 Binding und das Bindingsystem
______________2.1.4.1 Was ist DataBinding? Das Konzept dahinter
______________2.1.4.2 Binding anhand einfacher Beispiele und Klassen
______________2.1.4.3 DesignTime Support für Binding
______________2.1.4.4 Binding über Converter
______________2.1.4.5 Binding über DataTemplates
______________2.1.4.6 Binding an Collections. Warum ICollectionViewSource? Filtern, Sortieren, Gruppieren ohne viel Aufwand
______________2.1.4.7 Validierung von Benutzereingaben
______________2.1.4.8 Rücksicht nehmen auf die aktuelle Culture
________2.1.5 Dependency Properties
______________2.1.5.1 Was sind Dependency Properties und wie unterscheiden sie sich von normalen Properties
______________2.1.5.2 Wir erstellen und Rendern eine TextEllipse mittels Dependency Properties
______________2.1.5.3 Eigene DependencyProperties in einem UserControl implementieren
________2.1.6 Markuperweiterungen
______________2.1.6.1 Kurze Theorie
______________2.1.6.2 Eigene Markuperweiterungen
________2.1.7 Attached Properties
______________2.1.7.1 Kurze Theorie (wozu Attached Properties)
______________2.1.7.2 Eigene Attached Properties erstellen ;-)
________2.1.8 Inputs und Commands
______________2.1.8.1 Die Input-API
______________2.1.8.2 Tastatur und Mausklassen
______________2.1.8.3 Eventrouting (Direct, Bubbling, Tunneling)
______________2.1.8.4 Touch und Multitouch (wird ja immer wichtiger)
______________2.1.8.5 Focus (Der Unterschied zwischen Keyboardfocus und Logicalfocus)
______________2.1.8.6 Commands (Integrierte und Eigene)
______________2.1.8.7 Die RelayCommand Klasse
______________2.1.8.8 CommandBinding und CommandParameter
___3. Eine Telefonbuch Applikation unter WPF (ohne Binding)
_____!! Kapitel wird/wurde gestrichen !!
___4. Eine Telefonbuch Applikation unter WPF (mit Binding der CodeBehind)
_____4.1 Das Model erstellen / was soll die App können
_____4.2 Die erste View erstellen und Binden
_____4.3 Die erste View besser strukturieren
_____4.4 Filtermöglichkeit einbinden (oder doch mehr?)
_____4.5 Einträge bearbeiten und speichern
___5. Das MVVM Pattern
_____5.1 Was ist das MVVM Pattern?
_____5.2 Wann MVVM und wann nicht?
_____5.3 Welchen Mehrwert kann ich aus dem Pattern gewinnen?
_____5.4 MVVM und CodeBehind - verboten?
_____5.5 Model - View - ViewModel - Wars das?
_____5.6 Erstellen einer korrekten MVVM Projektmappe in VisualStudio
___6. Unser Telefonbuch in MVVM
_____6.1 Das Model erstellen
_____6.2 ViewModel - Der Core - was benötigen wir alles ehe wir anfangen können mit unserem Programm
_____6.3 Die RelayCommand-Klasse
_____6.4 Services - Wie Messageboxen, Dialoge, MouseCursor oder TaskbarInfo steuern wenn ich die View nicht kenne?
_____6.5 Jetzt anfangen? Ne? Warum?
_____6.6 Das MainViewModel erstellen
_____6.7 ....
_____6.8 Fazit zum MVVM Pattern
___7. Lokalisierung und Globalisierung
_____7.1 Lokalisierung nur mit Boardmitteln
_____7.2 Lokalisierung mit schwung (unter zuhilfenahme von zwei NuGet-Paketen)
_____7.3 Globalisierung (Datum, Währung, usw.)
_____7.4 Lokalisieren von Werten aus Fremsystemen (DB, XML usw.)
_____7.5 Gute Hilfsprogramme und Helferlein
___8. UnitTests und IntergrationTests
_____8.1 Wozu UnitTests?
_____8.2 Wie schreibe ich Tests (Grundlagen)
_____8.3 Testen unseres ViewModels möglich?
_____8.4 ...
_____8.5 ...
_____8.6 Fazit
___9. Repository (DataAccessLayer)
_____9.1 Noch einen Schritt weiter? Wozu?
_____9.2 Besprechen und Aufsetzen eines Repositorys
_____9.3 Wir bauen unser Telefonbuch abermals neu
_____9.4 Fazit
Änderungen und streichungen des Inhaltsverzeichnis bzw. Teile davon vorbehalten
Für Fragen, Anregungne, Kritik, Lob oder Diskussionen gibt es den Supportthread für dieses Tutorial !!
Antworten hier werden von den Mods in der Supportthread verschoben.
Autor: Sascha Patschka
Inhaltsverzeichnis (inkrementell)
___1. Vorstellung
_____1.1 Einleitung
_____1.2 Aufbau der Tutorialreihe
___2. Grundlagen der WPF
_____2.1 Einführung in die WPF
________2.1.1 Die wichtigsten Controls und deren Verwendung
______________2.1.1.1 Videocast: Die wichtigsten Controls und ihr Verhalten
______________2.1.1.2 Videocast: Style, Templates und Trigger
______________2.1.1.3 Videocast: Controls eine neue Optik verpassen
________2.1.2 XAML Namespaces
______________2.1.2.1 Kurze Theorie
______________2.1.2.2 Anwendung interessanter Namespaces
______________2.1.2.3 Eigene Namespaces erstellen und integieren
________2.1.3 Resourcen
______________2.1.3.1 Was sind Resourcen, was bringen sie mir
______________2.1.3.2 Unterschied StaticResource und DynamicResource
________2.1.4 Binding und das Bindingsystem
______________2.1.4.1 Was ist DataBinding? Das Konzept dahinter
______________2.1.4.2 Binding anhand einfacher Beispiele und Klassen
______________2.1.4.3 DesignTime Support für Binding
______________2.1.4.4 Binding über Converter
______________2.1.4.5 Binding über DataTemplates
______________2.1.4.6 Binding an Collections. Warum ICollectionViewSource? Filtern, Sortieren, Gruppieren ohne viel Aufwand
______________2.1.4.7 Validierung von Benutzereingaben
______________2.1.4.8 Rücksicht nehmen auf die aktuelle Culture
________2.1.5 Dependency Properties
______________2.1.5.1 Was sind Dependency Properties und wie unterscheiden sie sich von normalen Properties
______________2.1.5.2 Wir erstellen und Rendern eine TextEllipse mittels Dependency Properties
______________2.1.5.3 Eigene DependencyProperties in einem UserControl implementieren
________2.1.6 Markuperweiterungen
______________2.1.6.1 Kurze Theorie
______________2.1.6.2 Eigene Markuperweiterungen
________2.1.7 Attached Properties
______________2.1.7.1 Kurze Theorie (wozu Attached Properties)
______________2.1.7.2 Eigene Attached Properties erstellen ;-)
________2.1.8 Inputs und Commands
______________2.1.8.1 Die Input-API
______________2.1.8.2 Tastatur und Mausklassen
______________2.1.8.3 Eventrouting (Direct, Bubbling, Tunneling)
______________2.1.8.4 Touch und Multitouch (wird ja immer wichtiger)
______________2.1.8.5 Focus (Der Unterschied zwischen Keyboardfocus und Logicalfocus)
______________2.1.8.6 Commands (Integrierte und Eigene)
______________2.1.8.7 Die RelayCommand Klasse
______________2.1.8.8 CommandBinding und CommandParameter
___3. Eine Telefonbuch Applikation unter WPF (ohne Binding)
_____!! Kapitel wird/wurde gestrichen !!
___4. Eine Telefonbuch Applikation unter WPF (mit Binding der CodeBehind)
_____4.1 Das Model erstellen / was soll die App können
_____4.2 Die erste View erstellen und Binden
_____4.3 Die erste View besser strukturieren
_____4.4 Filtermöglichkeit einbinden (oder doch mehr?)
_____4.5 Einträge bearbeiten und speichern
___5. Das MVVM Pattern
_____5.1 Was ist das MVVM Pattern?
_____5.2 Wann MVVM und wann nicht?
_____5.3 Welchen Mehrwert kann ich aus dem Pattern gewinnen?
_____5.4 MVVM und CodeBehind - verboten?
_____5.5 Model - View - ViewModel - Wars das?
_____5.6 Erstellen einer korrekten MVVM Projektmappe in VisualStudio
___6. Unser Telefonbuch in MVVM
_____6.1 Das Model erstellen
_____6.2 ViewModel - Der Core - was benötigen wir alles ehe wir anfangen können mit unserem Programm
_____6.3 Die RelayCommand-Klasse
_____6.4 Services - Wie Messageboxen, Dialoge, MouseCursor oder TaskbarInfo steuern wenn ich die View nicht kenne?
_____6.5 Jetzt anfangen? Ne? Warum?
_____6.6 Das MainViewModel erstellen
_____6.7 ....
_____6.8 Fazit zum MVVM Pattern
___7. Lokalisierung und Globalisierung
_____7.1 Lokalisierung nur mit Boardmitteln
_____7.2 Lokalisierung mit schwung (unter zuhilfenahme von zwei NuGet-Paketen)
_____7.3 Globalisierung (Datum, Währung, usw.)
_____7.4 Lokalisieren von Werten aus Fremsystemen (DB, XML usw.)
_____7.5 Gute Hilfsprogramme und Helferlein
___8. UnitTests und IntergrationTests
_____8.1 Wozu UnitTests?
_____8.2 Wie schreibe ich Tests (Grundlagen)
_____8.3 Testen unseres ViewModels möglich?
_____8.4 ...
_____8.5 ...
_____8.6 Fazit
___9. Repository (DataAccessLayer)
_____9.1 Noch einen Schritt weiter? Wozu?
_____9.2 Besprechen und Aufsetzen eines Repositorys
_____9.3 Wir bauen unser Telefonbuch abermals neu
_____9.4 Fazit
Änderungen und streichungen des Inhaltsverzeichnis bzw. Teile davon vorbehalten
Für Fragen, Anregungne, Kritik, Lob oder Diskussionen gibt es den Supportthread für dieses Tutorial !!
Antworten hier werden von den Mods in der Supportthread verschoben.
If _work = worktype.hard Then Me.Drink(Coffee)
Seht euch auch meine Tutorialreihe <WPF Lernen/> an oder abonniert meinen YouTube Kanal.
## Bitte markiere einen Thread als "Erledigt" wenn deine Frage beantwortet wurde. ##
Seht euch auch meine Tutorialreihe <WPF Lernen/> an oder abonniert meinen YouTube Kanal.
## Bitte markiere einen Thread als "Erledigt" wenn deine Frage beantwortet wurde. ##
Dieser Beitrag wurde bereits 59 mal editiert, zuletzt von „Nofear23m“ ()