WPF

MEFedMVVM Composition & IComposer

Piccola nota: prima di leggere questo post si consiglia di dare un occhio ai due precedenti http://blogs.ugidotnet.org/federicoD/archive/2010/09/09/mef-mvvm-mefedmvvm.aspx http://blogs.ugidotnet.org/federicoD/archive/2011/01/27/caricare-assembly-non-referenziati-con-mefedmvvm.aspx Chi ha già usato MEFedMVVM saprà benissimo che una volta dato un nome ai nostri ViewModel e, dopo aver specificato nelle View quale ViewModel ci serve, “qualcuno” si occuperà di far combaciare e funzionare tutto l’ambaradan. Questo “qualcuno” è il LocatorBootstrapper, che insieme agli IComposers si occuperà di effettuare la composition. In particolare IComposer si occupa di definire quali sono i Catalogs da usare, per cui dove MEF andrà a cercare ViewModel, Services, e via dicendo, e ci consente anche...

Caricare assembly non referenziati con MEFedMVVM

Supponiamo che… State sviluppando un’applicazione Desktop con WPF. State utilizzando il pattern MVVM. State usando MEFedMVVM (e se non lo state facendo dateci un occhio) per associare i ViewModel alle View e per disaccoppiare (in maniera semplice e veloce) i contratti dei vostri servizi dalle implementazioni. Quest’ultime stanno su un progetto che non referenziate, e che non volete referenziare, da nessuna parte…quindi MEFedMVVM non è assolutamente in grado di soddisfare la richiesta dell’implementazione di uno di questi servizi. Come risolviamo questo problema? Dando un occhio ai sorgenti di MEFedMVVM, si scopre che lui...

Introduzione a MEF

In questo periodo l’universita’ o meglio un suo laboratorio di ricerca mi ha dato l’opportunita’ (oltre che lo stimolo) di studiare MEF e le Parallel Extensions utilizzando il .NET 3.5, ed io ho colto la palla al balzo! Cosi’ ho deciso di scrivere una serie di post su MEF sperando che possano interessare a qualcuno. Di seguito trovate la lista dei post che seguiranno nelle prossime settimane: Introduzione a MEF Imports & Exports Catalogs Recomposition Metadata Internals? “Fluent Composition”? Cos’e’ MEF? ...

Ribbon, PRISM & RegionAdapterBase

Da qualche giorno ho iniziato ad utilizzare PRISM all’interno di un progetto universitario e visto che c’ero venerdi’ scorso ho partecipato al workshop tenuto da DotNetMarche su WPF, MVVM e UI Composition (a dir poco fantastico, soprattutto la cena :D ). Per la UI ho scelto di utilizzare i WPF Ribbon Controls, visto che sono free, abbastanza documentati e anche se hanno qualche “magagna” in fondo funzionano bene. Il mio intento e’ di fare in modo che ogni modulo dell’applicazione possa iniettare, oltre che alla view principale, anche un menu’, o meglio un RibbonTab, in quanto il menu’ di base della shell...

WPF & OpenWebNet

Dopo i due post di Nicolò riguardanti le metodologie scelte per lo sviluppo e la gestione del "progetto" parliamo ora di che cos'è questo progetto. L'idea è quella di scrivere un programma per la gestione dell'impianto domotico MyHome, creato da Bticino. Dopo avere sviluppato le librerie per comunicare con questo sistema ho deciso di sviluppare un'applicazione che mostrasse sia come usare le librerie sia le potenzialità di MyHome. Infine ho deciso di portare questo progetto all'esame di stato che terrò (incrociando le dita) a fine giugno inizio luglio, sperando di colpire la commissione :P Il programma una volta avviata dovrebbe mostrare i...

Save Button & UpdateSourceTrigger

Un paio di mesi fa ho iniziato a studiare WPF e devo dire che ogni giorno che ci passo sopra mi affascina sempre di più…La settimana scorsa mi sono imbattuto in un problema che inizialmente non sapevo proprio come risolvere: volevo che ad alcuni TextBox di una mia window fosse applicato il binding solo al Click del pulsante Save della finestra. Cosi mi sono messo a sfogliare Pro WPF in C# 2008 ed ho trovato quasi subito la soluzione: basta impostare la proprietà UpdateSourceTrigger del binding ad Explicit e poi nel Click handler del pulsante Save chiamare il metodo SourceUpdate...