Technology Experience
.NET World

L’interfaccia di WPF è XAML, cioè XML…quindi serializzabile

Piccola riflessione della serata. L’interfaccia utente di un’applicazione WPF viene descritta da un file XML, nella fattispecie XAML. Cioè significa che è serializzabile. Ciò significa che, per esempio, possiamo in un qualsiasi momento fare una sorta di dump di una Windows – supponiamo – e salvare il tutto in un file XML su disco. Il dump contiene lo stato di tutta la Window: dalla Windows stessa a tutti i controlli che vi sono contenuti, con tutte le loro proprietà. Sarebbe interessante, per esempio, avere una Window ed intercettare eventuali eccezioni nate al suo interno. Quando viene scatenata un’eccezione, si fa il dump dell’interfaccia (ovvero il visual tree dell’intera Window), lo si salva su disco, così magari possiamo dare un’occhiata a quali valori c’erano sui controlli prima che il tutto generasse l’eccezione.

Dal momento che l’engine di WPF può caricare un blocco XAML a runtime, così evidentemente deve essere possibile anche l’operazione inversa, cioè ottenere lo XAML da un’interfaccia che sta vivendo in questo momento sullo schermo in una Windows o in una Page.

Nessun contenuto tecnico, solo una riflessione su cui vorrei ragionare e fare qualche test nei giorni seguenti.
Chiedere alla classe VisualTreeHelper per maggiori informazioni al riguardo. Se avete installato la MSDN Library in locale, date un’occhiata al codice che c’è di esempio per questa classe, perchè può dare l’idea.

Technorati Tags:

Send to Kindle

Igor Damiani

La sua passione per l'informatica nasce nella prima metà degli anni '80, quando suo padre acquistò un Texas Instruments TI-99. Da allora ha continuato a seguire l'evoluzione sia hardware che software avvenuta nel corso degli anni. E' un utente, un videogiocatore ed uno sviluppatore software a tempo pieno. Igor ha lavorato e lavora anche oggi con le più moderne tecnologie Microsoft per lo sviluppo di applicazioni: .NET Framework, XAML, Universal Windows Platform, su diverse piattaforme, tra cui spiccano Windows 10 piattaforme mobile. Numerose sono le app che Igor ha creato e pubblicato sul marketplace sotto il nome VivendoByte, suo personale marchio di fabbrica. Adora mantenere i contatti attraverso Twitter e soprattutto attraverso gli eventi delle community .NET.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.