WPF per il client Desktop Emanuele Garofalo
Emanuele Garofalo Blog: Email: I.M. e FB: CHI SONO http://www.dotnetcampania.org/blogs/nezumi Email: nezumi.nailo@gmail.com I.M. e FB: nezumi_mc@hotmail.it
AGENDA Cos’è WPF WPF e M-V-VM Demo Un pò di storia (ma giusto un pò) Architettura di WPF WPF e M-V-VM Demo
Architettura del .Net Framework 3.0 / 3.5 Entity Framework LINQ 3.5 3.0 WCF WPF WF Card Space WinForms ASP.Net ADO.Net 2.0 Base Class Library Common Language Runtime
Markup Dichiarativo [XAML] (XML-based) Cos’è WPF …e cosa non è Rendering Vettoriale Markup Dichiarativo [XAML] (XML-based) Sfrutta l’accelarazione della scheda video Si sposa bene con il pattern M-V-VM Non è un qualcosa che va a sostituire completamente windows forms Non è solo pulsanti 3D ed effetti speciali
ESEMPIO DI XAML <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" x:Class="WpfApplication1.MainWindow" x:Name="Window" Title="MainWindow" Width="320" Height="240"> <Grid x:Name="LayoutRoot"> <TextBox HorizontalAlignment="Left" Margin="37,35,0,0" VerticalAlignment="Top" Width="140" Height="23" Text="Ciao label, io sono una textbox" TextWrapping="Wrap"/> <Label HorizontalAlignment="Left" Margin="8,8,0,0" VerticalAlignment="Top" Width="97" Height="23" Content="Sono una label"/> </Grid> </Window>
L’architettura di wpf Application Services Deployment Services Databinding USER INTERFACE SERVICES XAML Accessibility Property System Input & Eventing BASE SERVICES DOCUMENT SERVICES Packaging Services XPS Documents Animation 2D 3D Audio Imaging Text Video Effects Composition Engine MEDIA INTEGRATION LAYER Controls Layout Questo diagramma mostra l’architettura di WPF. I diversi tipi di media che WPF è in grado di gestire: Vectors, Bitmaps, 3D audio e video, testi ed effetti. Si nota subito che la capacità di animazione è comune a tutti i media gestibili. Il Composition Engine è una delle feature più rilevanti in WPF: in pratica è possibile inserire contenuti all’interno di altri contenuti, per esempio: posso inserire in un button un datalist, o, se fossi bravo con la grafica, all’iterno do un pannello 3D una serie di datalist al cui interno sono presenti diversi button. Noterete subito come la UI composition si avvicini molto di più al concetto di design del web, rendendo anche, in certi casi, facile il passaggio di uno sviluppatore web verso la creazione di soluzioni desktop
M-V-VM Descrizione del pattern Architettura Perché Veniamo ai fatti M-V-VM Descrizione del pattern Architettura Perché I diversi modi per realizzarlo
Perché gli sviluppatori WPF adorano M-V-VM View ViewModel Model
Un diagramma un po’ più completo Unit Tests Integration Tests View XAML, Code Behind Behavior Actions Bindings ViewModel Properties, Commands, View Logic Events Data Model
DEMO Backoffice con WPF
Un grazie di cuore a tutti gli sponsor Senza di loro oggi non saremmo qui!
Compilate il modulo di feedback! La vostra opinione per noi è fondamentale! Grazie!