WPF daje programiście nieograniczone możliwości. Jednak aby go w pełni wykorzystać należy zastosować wzorzec projektowy MVVM, który umożliwia tworzenie aplikacji.

Opis

Na szkoleniu prowadzonym w formie warsztatów, utworzymy kompletną aplikację WPF z użyciem wzorca MVVM zgodnie z dobrymi praktykami.

Agenda

  1. Wprowadzenie
  • Podstawy WPF
  • Co to jest XAML?
  • Atrybuty i elementy
  • Markup Extensions
  • Zasada kompozycji
  1. Widoki (views)
  • Klasy Window, Page, UserControl
  • Zastosowanie Frame
  1. Panele
  • Grid, UniformGrid
  • StackPanel, DockPanel, WrapPanel
  • Canvas
  1. Kontrolki
  • Label, TexBox
  • Button
  • TextBox
  • CheckBox, RadioButton
  • Slider
  1. Kontrolki wieloelementowe
  • ListBox, ListView
  • DataGrid
  • TabControl
  1. Style (Styles)
  • Utworzenie stylu
  • Dziedziczenie stylu
  1. Szablony (Templates)
  • Szablon danych (Data Template)
  • Szablon kontrolek (ControlTemplate)
  • TemplateBinding
  1. Zasoby (Resources)
  • ResourceDictionary
  • Zasoby statyczne i dynamiczne
  • Ładowanie zasobów
  1. Wiązanie danych (Binding)
  • Wiązanie kontrolek między sobą (Element Binding)
  • Wiązanie kontrolek z danymi (Databinding)
  • Kontekst danych (DataContext)
  • Typy wiązania danych
  1. Konwertery
  • Konwerter wartości (IValueConverter)
  • Konwerter wielowartościowy (ImultiValueConverter)
  1. Wyzwalacze (triggers)
  • Wyzwalacze łaściwości
  • Wyzwalacze danych
  1. Wzorzec projektowy MVVM
  • Podział aplikacji na warstwy
  1. Notyfikacje
  • Implementacja notyfikacji (INotifyPropertyChanged)
  • Zastosowanie biblioteki Fody.PropertyChanged
  1. Komendy (Command)
  • Interfejs ICommand
  • Implementacja RelayCommand
  1. Zachowania (Behaviors)
  • Implementacja własnego zachowania
  • Wywoływanie metod na podstawie zdarzenia
  • Wywoływanie komend na podstawie zdarzenia
  1. Wstrzykiwanie zależności (Dependency Injection)
  • Utworzenie ViewModelLocator
  • Przegląd frameworków IoC (Unity, AutoFac, CommonServiceLocation)
  1. Nawigacja
  • NavigationService
  • Nawigacja pomiędzy widokami w MVVM
  1. Walidacja
  • Walidacja z użyciem wyjątków
  • Walidacja z zastosowaniem interfejsu IDataErrorInfo
  • Walidacja za pomocą biblioteki FluentValidation
  1. Operacje asynchroniczne
  • Tworzenie zadań Task
  • Zastosowanie async/await
  • Anulowanie zadań
  • Wyświetlanie postępu
  1. Przegląd frameworków WPF MVVM
  • MVVM Light
  • Micro
  • Prism

Prowadzący

Szkolenie poprowadzi Marcin Sulecki, programista i trener z 20-letnim doświadczeniem, który zrealizował wiele komercyjnych projektów z użyciem WPF.