Novinky ve WPF 4.0 Miroslav Kaděra
Nové ovládací prvky + demo Visual State Manager + demo Vylepšené zobrazování textu Touch Input Cached Composition Další změny Novinky ve WPF 4.0
DataGrid Calendar DatePicker Převzaty z WPF Toolkitu 99% shodné se Silverlight alternativami Nové ovládací prvky (Controls)
Standardní funkce Editace Různé módy vybírání buněk Automatické seřazování Automatické generování sloupců + výhody WPF Dá se naplnit „běžným“ způsobem DataGrid
Známé z WinForms Běžné funkce Pohyb pomocí klávesnice Nastavení prvního dne v týdnu Nastavení formátu data Vybraná data, nepovolená data Calendar a DatePicker
Calendar
DatePicker
Ukázka DataGrid, Calendar, DatePicker
WPF Toolkit ?? Bag O‘Tricks AnimatingTilePanel ColorPicker InfoTextBox ListPager NumericUpDwn Reveal TransitionsPresenter TreeMapPanel Další nové prvky
Lze se bez toho obejít Dříve to bylo ve WPF Toolkitu V Silverlightu už to je V Blendu to jde (půjde) naklikat Visual State Manager
Ovládací prvky mají různé stavy V různých stavech vypadají různě Předdefinované stavy či vlastní stavy Mezi stavy můžou daným způsobem přecházet Stav ovl. prvku VisualState Totéž lze provést pomocí Triggerů Visual State Manager
Storyboard Reprezentuje vzhled prvku v daném stavu Sb. se spustí po přechodu do stavu Slučují se do VisualStateGroup (např. CommonStates, FocusedStates, …) VisualState
Button – VisualStates VisualState Name VisualState Group Name Description NormalCommonStatesThe default state. MouseOverCommonStates The mouse pointer is positioned over the control. PressedCommonStatesThe control is pressed. DisabledCommonStatesThe control is disabled. FocusedFocusStatesThe control has focus. UnfocusedFocusStatesThe control does not have focus.
Demo Visual State Manager
Vylepšení Text Stacku Text Formatting Metriky, mezery mezi písmeny, pomlčkování, vykreslování svislých linek Text Rendering Rendering písmen (antialiasing) Zobrazování Textu
Ideal Původní Linky písmen jsou dány fontem Lépe se čte Lepší pro: Velký text, transformovaný text, Zoom Display Metriky kompatibilní s GDI Svislé supertenké linky nebudou tak supertenké Lepší pro: Malý text Text Formatting
Vlastnost TextOptions.TextFormattingMode Hello World... Ideal text formatting Hello World... Display text formatting Text Formatting
Antialiasingový algoritmus Aliased GrayScale ClearType Auto Text Rendering
Vlastnost TextOptions.TextRenderingMode Hello World... ClearType Hello World... Grayscale Hello World... Aliased Text Rendering
Máš to v jiném souboru ! Touch Input
WPF = Vektorová grafika Složité objekty Složité animace, transformace, zoom, … Budeme je cacheovat jako bitmapy ! Cached Composition
Některé stavy složitého prvku uchováme jako bitmapu Uložíme do VIDEO paměti <BitmapCache EnableClearType="False" RenderAtScale="1" SnapsToDevicePixels="False" /> CacheMode a BitmapCache
Prvek je stále živý !! (reaguje) RenderAtScale – při zoomování BitmapCacheBrush – „re-use“ CacheMode a BitmapCache
Můžeme si definovat vlastní SelectionBrush a CaretBrush
SpellCheck – CustomDictionaries Vylepšený File Dialog Úpravy v XAML (XAML 2009) Podpora PixelShader 3 Změny v bindingu Full trust XBAP Další novinky