3. Silverlight
Plugin cross-browser e cross-platform
Una versione light del runtime del .NET Framework che
gira nel browser
Installata con il plugin
Funzionalità Out-Of-The-Browser
Applicazioni di tipo multimediale
Video, animazioni…
Applicazioni di business
Ricco insieme di controlli
Accesso a sorgenti dati via Web Services: SOAP,
REST…
http://wippy.grusp.org
4. Silverlight
breve storia
Silverlight 4
Aprile 2010
Silverlight 3
Giugno 2009
Silverlight 2
15 ott 2008
Silverlight 1.0
Set 2007
http://wippy.grusp.org
12. Silverlight Toolkit
o Controlli con licenza Open Source (OSI MS-PL)
o Aggiornati ogni 6-8 settimane
o http://www.codeplex.com/Silverlight
http://wippy.grusp.org
16. Collegare la UI ai Dati
Databinding
o Bidirezionale: dalla UI al modello e viceversa
o Funziona con oggetti che implementano IEnume-
IQueryable
o Array, Collections, Lists etc
o Notifica via INotifyPropertyChanged
XAML
<TextBlock Text="{Binding Points, Mode=OneWay}"/>
Binding binding = new Binding("Points"); C#
binding.Mode = BindingMode.OneWay;
TextBlock tb = new TextBlock();
tb.SetBinding(TextBlock.TextProperty, binding);
http://wippy.grusp.org
17. Layout della UI e Dati
DataTemplate
class Car
{
string Image {get;set} DataTemplate
string Model {get;set}
}
<DataTemplate x:Key="carTemplate">
<StackPanel>
<Image Source="{Binding Image}" />
<TextBlock TextContent="{Binding Model}" />
</StackPanel>
</DataTemplate>
http://wippy.grusp.org
23. Salviamo lo stato
Isolated Storage API
Come un cookie
Virtual file system
AppDataLocalLow (in Vista/7)
Specifico per utente
A livello di applicazione
(http://.. pippo.xap != http://..pluto.xap)
IsolatedStorageSettings [KeyValue]
IsolatedStorageFile [Files e directory]
http://wippy.grusp.org
24. Cosa NON abbiamo visto
OpenFile Dialog
Download on demand
Splash Screen
Dynamic CLR
IronRuby, Ironpyton, Managed Jscript
Visual State Manager
DRM, via PlayReady e WMDRM 10
DeepZoom
OOB
HW Acceleration, Graphics
http://wippy.grusp.org
25. In Conclusione
Una piattaforma completa per le RIA
.NET Framework con una ricca BCL
Numerosi Controlli out-of-the box
Skinning avanzato
Stack di Networking
Integrazione PHP
http://wippy.grusp.org