#27 - Gestione immagini in Silverlight 2.0
di Alessio Leoncini, in Silverlight 2.0, 13 novembre 2008
In Silverlight 2.0 sono disponibili molteplici oggetti per renderizzare immagini, in ognuno di essi è possibile utilizzare diverse modalità per referenziare un file bitmap.
E' possibile specificare semplicemente il nome del file o un path:
<Image Source="small_nebula.png"></Image> <Image Source="Images/aspitalia_2008launch.png"></Image>
Oltre che nel markup un'immagine può essere referenziata programmaticamente:
Uri uri = new Uri("small_nebula.png", UriKind.Relative); BitmapImage img = new BitmapImage(uri); image00.Source = img;
Nei precedenti esempi i file e le cartelle dovranno trovarsi nella stessa directory del file XAP dell'applicazione, solitamente all'interno di ClientBin.
Per semplificare il deploy dei progetti è possibile includere le immagini direttamente nel file XAP del progetto:
<Image Source="/silverlightitalia_linkbar.png"></Image> <Image Source="/Images/silverlightitalia_linkbar.png"></Image>
Uri uri = new Uri("/silverlightitalia_linkbar.png", UriKind.Relative); BitmapImage img = new BitmapImage(uri); image00.Source = img;
Per includere automaticamente i file bitmap nello XAP è necessario utilizzare la maschera proprietà dei file in Visual Studio specificando "BuildAction" a "Content" e "Copy to Output Directory" a "Do not copy".
Le immagini possono anche essere compilate all'interno di specifiche Silverlight ClassLibrary (dll) specificando le proprietà dei file in Visual Studio "BuildAction" a "Resource" e "Copy to Output Directory" a "Do not copy".
<Image Source="/ASPItalia.EasyShop.ImageLibrary;component/poweredby.png"></Image> <Image Source="/ASPItalia.EasyShop.ImageLibrary;component/Images/silverlightitalia_linkbar.png"></Image>
Uri uri = new Uri("/ASPItalia.EasyShop.ImageLibrary;component/poweredby.png", UriKind.Relative); BitmapImage img = new BitmapImage(uri); image00.Source = img;
In fine è possibile referenziare immagini come risorse remote specificando l'URL completo:
<Image Source="http://localhost:33073/aspitalia_2008launch.png"></Image>
Uri uri = new Uri("http://localhost:33073/aspitalia_2008launch.png", UriKind.Absolute); BitmapImage img = new BitmapImage(uri); image00.Source = img;
In questo caso l'URL può essere il sito web stesso che ospita il progetto Silverlight per mantenere una cerca comodità di gestione delle immagini.
Qualora invece le risorse siano esposte da altri domini è necessario che siano rispettati i requisiti di sicurezza e cioè che l'hoster consenta l'accesso a tali immagini configurando oculatamente il file clientaccesspolicy.xml.
Approfondimenti
Finalmente Silverlight 2.0 RTW!
ADO.NET Data Service al servizio di Silverlight 2.0
Documentazione offline per Silverlight 2.0 RC0
#45 - Comunicazione tra oggetti Silverlight nella stessa pagina
Lambda Expression in Windows Presentation Foundation
Rilasciata la release 0.7 di Moonlight: Silverlight per Linux
Moonlight 2.0 Preview: Silverlight per Linux
Le novità del .NET Framework 3.5 SP1 in Windows Presentation Foundation
#51 - Blue Style ComboBox per Silverlight 2.0
Silverlight - Audio peak meter
Disponibile il Silverlight Toolkit March 2009 Release
#24 - Animare l'ingombro di un elemento con dimensioni dinamiche
Commenti
Se hai letto questo script, indica una preferenza sui suoi contenuti:
Per procedere devi essere autenticato.
























Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.