1 / 36

Windows Presentation Foundation

Windows Presentation Foundation. Štěpán Bechynský Developer Evangelist Microsoft. XAML. Programovací jazyk Vychází z XML Vše co udělám pomocí XAML mohu udělat i s pomocí C#, Visual Basic .NET, IronPython , … Popisuje Uživatelské rozhraní Animace Datové vazby …. Hello XAML. DEMO.

Download Presentation

Windows Presentation Foundation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Windows PresentationFoundation Štěpán Bechynský Developer Evangelist Microsoft

  2. XAML • Programovací jazyk • Vychází z XML • Vše co udělám pomocí XAML mohu udělat i s pomocí C#, VisualBasic.NET, IronPython, … • Popisuje • Uživatelské rozhraní • Animace • Datové vazby • …

  3. Hello XAML DEMO

  4. Manažery rozložení • Řídí rozložení ovládacích prvků • DockPanel • StackPanel • Grid • GridSplitter • Canvas

  5. Manažery rozložení DEMO

  6. Element Style

  7. Dědičnost • Atribute BaseOn • Jméno stylu BaseOn={StaticResource style1} • Cílový typstylu BaseOn={StaticResource{x:Type …}}

  8. Kam s ním? • Přímo nastavit vlastnost Style objektu • Vložit do Resources (nejčastější) • Kód

  9. Jak se styl aplikuje • Podle typu objektu – atribut TargedType • Podle jména stylu – atribut x:Key • Vždy se hledá nejbližší styl vyhovující podmínce v hierarchii objektů směrem nahoru

  10. Styles DEMO

  11. Typy • Trigger – váže se na jednu vlastnost • MultiTrigger – váže se na více vlastností • DataTrigger – váže se na jednu datovou vazbu • MultiDataTrigger – váže se na více datových vazeb • EventTrigger – váže se na událost, typické použití u animací

  12. Kde definovat • Vlastnost Triggers • Style • Template • FrameworkElement

  13. Triggers DEMO

  14. Animace • Lze animovat v podstatě každou vlastnost • „Animátory“ pro jednotlivé datové typy • Klíčové snímky

  15. Silverlight demo

  16. Templates demo

  17. Templates • Zachovává se funkcionalita • Mění se vzhled

  18. Základní princip • V podstatě jakoukoliv vlastnost objektu lze mapovat na vlastnost jiného objektu • Zdroj ovlivňuje cíl, ale je to možné i naopak (BindingMode) • Při nesouladu datových typů zdroje a cíle je třeba použít konvertor (IValueConverter, IMultiValueConverter)

  19. Jednoduchý DataBinding

  20. 1: Jednoduchý DataBinding DEMO 01

  21. Použití konvertorů

  22. 2: IValueConverter, IMultiValueConverter DEMO 01

  23. DataContext • Nastavuje „globalní“ zdroj dat pro objekt a jemu podřízené elementy

  24. 3: DataContext DEMO 01

  25. XML jako datový zdroj I • XmlDataProvider • Lze měnit dynamicky v kódu • DataContext a Binding se nastavují přes XPath

  26. WPF RSSFeedReader DEMO 02

  27. XML jako datový zdroj II • Registrace jmenného prostoru • Pozor na jmenné prostory bez prefixu

  28. Live Search REST API klient DEMO 03

  29. SQL Server jako datový zdroj • Je třeba vytvořit ORM • LINQ to SQL, LINQ to Entities • Zobrazení dat typicky pomocí DataContext a DataTemplate

  30. 1: WPF ToolkitDataGrid – automatické generování sloupců DEMO 04

  31. DataGrid – Kolekce Columns • Automatické generování sloupců • Předdefinované typy sloupců • DataGridTextColumn • DataGridCheckBoxColumn • DataGridComboBoxColumn • DataGridHyperlinkColumn • DataGridTemplateColumn

  32. 2: WPF ToolkitDataGrid – ruční vytváření sloupců DEMO 04

  33. DataGrid – DataGridTemplateColumn • Naprostá volnost zobrazení • Šablony • DataGridTemplateColumn.CellTemplate • DataGridTemplateColumn.CellEditingTemplate • Obsah šablon pomocí DataTemplate

  34. 3: WPF ToolkitDataGrid – šablona sloupce DEMO 04

  35. DataGrid – RowDetailsTemplate • Zobrazuje se pod vybraným řádkem • DataContext přebrán z vybraného řádku • Obsah pomocí DataTemplate

  36. 4: WPF ToolkitDataGrid – detail řádku DEMO 04

More Related