Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Windows Presentation Foundation

Podobné prezentace


Prezentace na téma: "Windows Presentation Foundation"— Transkript prezentace:

1 Windows Presentation Foundation
Úvod a přehled WPF Layout Prvky Ovládací prvky

2 Windows Presentation Foundation
Úvod

3 Potřeba lépe organizovat informace
Výzvy Hardwarová inovace přestihuje software Displeje s vysokým DPI Široké obrazovky s možností rotace (TabletPC) GPU roste 3x rychleji než Moorův zákon Přetížení informacemi Dokumenty, hudba, video, fotografie, atd. Potřeba lépe a chytřeji visualizovat informace

4 Jednotný přístup k UI, dokumentům a médiím
Aplikační model Deklarativní programování - XAML Jednoduchá integrace médií Data binding Bohaté možnosti stylů a témat Hostování uvnitř prohlížeče Grafický model 2D & 3D grafika, rastrová grafika Text Video a audio Animace Model dokumentů Pevné, plovoucí a adaptivní rozložení Pokročilá typografie Řízení práv Media Integration Layer Element Services Aplikační model Model dokumentů Grafický model Composition and Rendering .NET Framework DirectX WPF Nástroje a jazyky Context: First pillar of Avalon UI, docs and media are all just one single platform now. Avalon is based on managed code, as well as DirectX (specifically Direct3D is the rendering engine). You can mix and match graphics, controls, media on a single surface, using layout, animation, styling and data binding to connect them together.

5 WPF komponenty Document Services User Interface Services
XPS Documents Application Services Controls Databinding Packaging Services Deployment Services Layout Media Integration Layer Base Services Imaging 2D Text Audio XAML Effects 3D Video Accessibility Animation Input & Eventing Composition Engine Property System

6 Deklarativní tvorba aplikací
WPF přináší model postavený na oddělení grafického návrhu aplikace a aplikační logiky Model známý z ASP.NET Návrh vzhledu pomocí jazyka XAML (eXtensible Application Markup Language) XAML je převeden do zdrojového kódu a přeložen do binární formy Je postaven na existenci neúplných tříd (partial class) XAML nemusí sloužit pouze k definici grafického vzhledu, ale k definici Aplikace jako celku Systémových zdrojů atd.

7 Deklarativní programování
Návrh uživatelského rozhraní Standardním způsobem Button btn = new Button(); btn.Background = Colors.Red; btn.Content = "Tlačítko!"; this.Children.Add( btn ); Deklarativně v jazyce XAML (eXtensible Application Markup Language) <Button Background="Red">Tlačítko!</Button>

8 Kombinace XAML a kódu Typicky je v XAML definován vzhled, animace, vazba na datové zdroje, zachycení a zpracování některých událostí V „kódu v pozadí“ je realizována aplikační logika XAML <Button x:Name="tlacitko" Background="Red" Click="btn_click"> Tlačítko! </Button> partial class Window1 : Window { public Window1() { InitializeComponent(); } public btn_click(object sender, RoutedEventArg e) { … } }; + Kód v pozadí partial class Window1 : Window { Button tlacitko; void InitializeComponent() { tlacitko = new Button(); tlacitko.Background = “Red"; tlacitko.Click += btn_click; this.AddChild(tlacitko); } };

9 Jmenné prostory v XAML kódu
Kořenový element každého XAML dokumentu musí deklarovat používané jmenné prostory <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:MojePrvniWPFAplikace.Window1"> <Button … /> </Window> Jmenný prostor Windows Presentation Foundation Jmenný prostor XAML C#/VB.NET jmenný prostor, v němž je založen kód v pozadí

10 Navigace v aplikaci WPF aplikace nabízí nový typ „explorer“ navigace
Automaticky jsou generována tlačítka Zpět a Vpřed Logika a programová podpora zabudována do objektu aplikace (Application) <TextBlock> Koukni také na stránku <Hyperlink NavigateUri="Window2.xaml">Page 2</Hyperlink>. </TextBlock> <Button Click="nextPage_clicked"> Další stránka </Button> void nextPage_clicked(object sender, RoutedEventArgs e) { NavigationService.Navigate(new Uri("Window2.xaml", UriKind.Relative)); }

11 Typy aplikací Plné lokální aplikace Web Browser aplikace
Instalovány na lokální počítač Přístup k systémovým zdrojům definován právy uživatele (Full Trust) Web Browser aplikace Běží v prostředí prohlížeče Využívá typické Forward-Back stránkování Omezení práv aplikace (Partial Trust) Aplikace nemůže požádat o dodatečná práva (běží nebo ne) Potřebná práva pro běh aplikace jsou definována v projektu aplikace (záložka Security – Zone & Permissions)

12 Srovnání typů aplikací
Vlastnost Lokání aplikace Browser aplikace Běhové prostředí Lokální OS IE 7 Důvěra Plná Omezená Dostupnost Online/Offline Online Nasazení Nejlépe ClickOnce nebo MSI Nejlépe ClickOnce

13 Instalace ClickOnce Přirozený vývoj „bezdotykové instalace“ z .NET 1.x
Založeno na HTTP protokolu pro .NET aplikace exe stažen, uložen, spuštěn ClickOnce Podporuje instalaci obou typů aplikací (plné i browser) 2 scénáře nasazení Online/offline Pouze online Odstraňuje problémy předchozí verze; nyní umí Podpora v nástrojích (VS 2005, SDK) Sledování postupu instalace Distribuce jiných souborů než assembly (data, COM, nápověda) Možnost požádat o vyšší povolení Je vyžadován digitální podpis instalace

14 Instalace \demo demo_1_0_0_0.application demo.application Manifest nasazení publish.htm setup.exe \demo\demo_1_0_0_0 demo. exe.manifest Aplikační manifest demo. exe.deploy *.*.deploy \demo\demo_1_0_0_0 Aplikační soubory *.application - manifest nasazení, XML popis nasazení a update aplikace publish.htm – web stránka ClickOnce nasazení setup.exe - .NET FX 2.0 bootstrap + další potřebné aplikaci potřebné pro běh aplikace (např. SQL Server Express), konfigurovatelné ve VS 2005

15 Srovnání nasazení aplikací
Vlastnost Online/ offline Online ClickOnce nasazení Opravena novou verzí Zástupce ve Start menu Položka v Add/Remove programs Výzva k instalaci nové verze Roll-back na předchozí verzi

16 Video ukázka Vytvoření aplikace Návrh uživatelského rozhraní v XAML
XAML Pad Nasazení aplikace


Stáhnout ppt "Windows Presentation Foundation"

Podobné prezentace


Reklamy Google