+ All Categories
Home > Documents > Windows Presentation Foundation

Windows Presentation Foundation

Date post: 03-Jan-2016
Category:
Upload: kelsey-douglas
View: 45 times
Download: 0 times
Share this document with a friend
Description:
Windows Presentation Foundation. Úvod a přehled WPF Layout Prvky Ovládací prvky. Windows Presentation Foundation. Úvod. 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) - PowerPoint PPT Presentation
16
Windows Presentation Windows Presentation Foundation Foundation 1. 1. Úvod a přehled WPF Úvod a přehled WPF 2. 2. Layout Prvky Layout Prvky 3. 3. Ovládací prvky Ovládací prvky
Transcript
Page 1: Windows Presentation Foundation

Windows Presentation Windows Presentation FoundationFoundation

1.1. Úvod a přehled WPFÚvod a přehled WPF2.2. Layout PrvkyLayout Prvky3.3. Ovládací prvkyOvládací prvky

Page 2: Windows Presentation Foundation

Windows Presentation Windows Presentation FoundationFoundation

ÚvodÚvod

Page 3: Windows Presentation Foundation

Potřeba lépe organizovat informacePotřeba lépe organizovat informace

VýzvyVýzvyHardwarová inovace přestihuje softwareHardwarová inovace přestihuje software

Displeje s vysokým Displeje s vysokým DPIDPI

Široké obrazovky s možností rotaceŠiroké obrazovky s možností rotace (TabletPC) (TabletPC)

GPU GPU roste roste 33xx rychleji než rychleji než MoorMoorův zákonův zákon

Přetížení informacemiPřetížení informacemiDokumenty, hudba, video, fotografie, Dokumenty, hudba, video, fotografie, atd.atd.

Potřeba lépe a chytřeji visualizovat informacePotřeba lépe a chytřeji visualizovat informace

Page 4: Windows Presentation Foundation

Jednotný přístup k UI, dokumentům Jednotný přístup k UI, dokumentům a médiíma médiím

Aplikační modelAplikační modelDeklarativní programování - XAMLDeklarativní programování - XAML

Jednoduchá integrace médiíJednoduchá integrace médií

DData bindingata binding

Bohaté možnosti stylů a tématBohaté možnosti stylů a témat

Hostování uvnitř prohlížečeHostování uvnitř prohlížeče

Grafický modelGrafický model2D & 3D 2D & 3D grafika, rastrová grafikagrafika, rastrová grafika

TextText

Video Video aa audio audio

AnimaceAnimace

Model dokumentůModel dokumentůPevné, plovoucí a adaptivní rozloženíPevné, plovoucí a adaptivní rozložení

Pokročilá typografiePokročilá typografie

Řízení právŘízení práv

Media IntegrationLayer

Media IntegrationLayer

Element ServicesElement Services

Ap

lika

ční

mo

de

lA

plik

ačn

í m

od

el

Mo

de

l d

oku

me

ntů

Mo

de

l d

oku

me

ntů

Gra

fický

m

od

el

Gra

fický

m

od

el

Composition and Rendering

Composition and Rendering

.NET Framewor

k

.NET Framewor

kDirectXDirectX

WPF

stro

je a

jazy

kyN

ást

roje

a ja

zyky

Page 5: Windows Presentation Foundation

WPF komponentyWPF komponenty

2D

3D

AudioImaging

TextVideoEffects

Composition Engine

Animation

XAML

Accessibility

Property System

Input & Eventing

Document Services

Packaging Services

Application Services

Deployment Services

Controls

Layout

Databinding

User Interface Services

Media Integration Layer Base Services

XPS Documents

Page 6: Windows Presentation Foundation

Deklarativní tvorba aplikacíDeklarativní tvorba aplikací

WPF přináší model postavený na oddělení WPF přináší model postavený na oddělení grafického návrhu aplikace a aplikační logikygrafického návrhu aplikace a aplikační logiky

Model známý z ASP.NETModel známý z ASP.NET

Návrh vzhledu pomocí jazyka XAML (eXtensible Application Návrh vzhledu pomocí jazyka XAML (eXtensible Application Markup Language)Markup Language)

XAML je převeden do zdrojového kódu a přeložen do XAML je převeden do zdrojového kódu a přeložen do binární formybinární formy

Je postaven na existenci neúplných tříd (partial class)Je postaven na existenci neúplných tříd (partial class)

XAML nemusí sloužit pouze k definici grafického XAML nemusí sloužit pouze k definici grafického vzhledu, ale k definicivzhledu, ale k definici

Aplikace jako celkuAplikace jako celku

Systémových zdrojů atd.Systémových zdrojů atd.

Page 7: Windows Presentation Foundation

Deklarativní programováníDeklarativní programování

Návrh uživatelského rozhraníNávrh uživatelského rozhraníStandardním způsobemStandardním způsobemButton btn = new Button();Button btn = new Button();

btn.Background = Colors.Red;btn.Background = Colors.Red;

btn.Content = "btn.Content = "TlačítkoTlačítko!";!";

this.Children.Add( btn );this.Children.Add( btn );

Deklarativně v jazyce XAML (eXtensible Deklarativně v jazyce XAML (eXtensible Application Markup Language)Application Markup Language)

<Button Background="Red"><Button Background="Red">TlačítkoTlačítko!</Button>!</Button>

Page 8: Windows Presentation Foundation

Kombinace XAML a kóduKombinace XAML a kódu

Typicky je v XAML definován vzhled, animace, vazba na Typicky je v XAML definován vzhled, animace, vazba na datové zdroje, zachycení a zpracování některých událostídatové zdroje, zachycení a zpracování některých událostí

V „kódu v pozadí“ je realizována aplikační logikaV „kódu v pozadí“ je realizována aplikační logika

<Button x:Name="tlacitko" Background="Red" Click="btn_click"> Tlačítko! </Button>

partial class Window1 : Window { Button tlacitko;

void InitializeComponent() { tlacitko = new Button(); tlacitko.Background = “Red"; tlacitko.Click += btn_click; this.AddChild(tlacitko); }};

XAML

partial class Window1 : Window { public Window1() { InitializeComponent(); }

public btn_click(object sender, RoutedEventArg e) { … }};

+

Kód v pozadí

Page 9: Windows Presentation Foundation

C#/VB.NET jmenný prostor, v němž je založen kód v pozadíJmenný prostor XAMLJmenný prostor Windows Presentation Foundation

Jmenné prostory v XAML kóduJmenné prostory v XAML kódu

Kořenový element každého XAML Kořenový element každého XAML dokumentu musí deklarovat používané dokumentu musí deklarovat používané jmenné prostoryjmenné prostory

<Window <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xamlxmlns:x="http://schemas.microsoft.com/winfx/2006/xaml""

xmlns:local="clr-namespace:MojePrvniWPFAplikace.Window1"xmlns:local="clr-namespace:MojePrvniWPFAplikace.Window1">>

<Button … /><Button … />

</Window></Window>

Page 10: Windows Presentation Foundation

<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));}

Navigace v aplikaciNavigace v aplikaci

WPF aplikace nabízí nový typ „explorer“ WPF aplikace nabízí nový typ „explorer“ navigacenavigace

Automaticky jsou generovánaAutomaticky jsou generovánatlačítka Zpět a Vpředtlačítka Zpět a Vpřed

Logika a programová podporaLogika a programová podporazabudována do objektu zabudována do objektu aplikace (Application)aplikace (Application)

Page 11: Windows Presentation Foundation

Typy aplikacíTypy aplikací

Plné lokální aplikacePlné lokální aplikaceInstalovány na lokální počítač Instalovány na lokální počítač

Přístup k systémovým zdrojům definován právy uživatele Přístup k systémovým zdrojům definován právy uživatele (Full Trust)(Full Trust)

Web Browser aplikaceWeb Browser aplikaceBěží v prostředí prohlížeče Běží v prostředí prohlížeče

Využívá typické Forward-Back stránkováníVyužívá typické Forward-Back stránkování

Omezení práv aplikace (Partial Trust)Omezení práv aplikace (Partial Trust)Aplikace nemůže požádat o dodatečná práva (běží nebo ne)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 Potřebná práva pro běh aplikace jsou definována v projektu aplikace (záložka Security – Zone & Permiaplikace (záložka Security – Zone & Permissssions)ions)

Page 12: Windows Presentation Foundation

Srovnání typů aplikacíSrovnání typů aplikací

VlastnostVlastnost Lokání aplikaceLokání aplikace Browser aplikaceBrowser aplikace

Běhové prostředíBěhové prostředí Lokální OSLokální OS IE 7IE 7

DůvěraDůvěra PlnáPlná OmezenáOmezená

DostupnostDostupnost Online/OfflineOnline/Offline OnlineOnline

NasazeníNasazení Nejlépe ClickOnce Nejlépe ClickOnce nebo MSInebo MSI

Nejlépe ClickOnceNejlépe ClickOnce

Page 13: Windows Presentation Foundation

Instalace ClickOnceInstalace ClickOncePřirozený vývoj „bezdotykové instalace“ z .NET 1.xPřirozený vývoj „bezdotykové instalace“ z .NET 1.x

Založeno na HTTP protokolu pro .NET aplikaceZaloženo na HTTP protokolu pro .NET aplikaceexe stažen, uložen, spuštěnexe stažen, uložen, spuštěn

ClickOnceClickOncePodporuje instalaci obou typů aplikací (plné i browser)Podporuje instalaci obou typů aplikací (plné i browser)2 scénáře nasazení 2 scénáře nasazení

Online/offlineOnline/offlinePouze onlinePouze online

Odstraňuje problémy předchozí verze; nyní umíOdstraňuje problémy předchozí verze; nyní umíPodpora v nástrojích (VS 2005, SDK)Podpora v nástrojích (VS 2005, SDK)Sledování postupu instalaceSledování postupu instalaceDistribuce jiných souborů než assembly (data, COM, Distribuce jiných souborů než assembly (data, COM, nápověda)nápověda)Možnost požádat o vyšší povoleníMožnost požádat o vyšší povolení

Je vyžadován digitální podpis instalaceJe vyžadován digitální podpis instalace

Page 14: Windows Presentation Foundation

InstalaceInstalace\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

\demo

demo_1_0_0_0.application

demo.application

Manifest nasazení

publish.htm

setup.exe

*.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

Page 15: Windows Presentation Foundation

Srovnání nasazení aplikacíSrovnání nasazení aplikací

VlastnostVlastnost Online/Online/offlineoffline OnlineOnline

ClickClickOnceOnce nasazení nasazení

Opravena novou verzíOpravena novou verzí

Zástupce ve Start menuZástupce ve Start menu

Položka v Add/Remove programsPoložka v Add/Remove programs

Výzva k instalaci nové verzeVýzva k instalaci nové verze

Roll-back na předchozí verziRoll-back na předchozí verzi

Page 16: Windows Presentation Foundation

Video ukázkaVideo ukázka

Vytvoření aplikaceVytvoření aplikace

Návrh uživatelského rozhraní v XAMLNávrh uživatelského rozhraní v XAML

XAML PadXAML Pad

Nasazení aplikaceNasazení aplikace


Recommended