E’ l’argomento principale in questi giorni: il rilascio della beta1 di Visual Studio 2010. Una delle novità è il fatto che questo è sviluppato in WPF che permette, appunto, l’utilizzo delle features della tecnologia per la personalizzazione.
C’è già chi ha iniziato a “moddare” la start page di VS 2010 
Uno dei primi “scogli” in cui ci si scaglia contro durante lo studio del Model-View-ViewModel è la visualizzazione di qualcosa di conseguenza alla selezione di un item da, appunto, un ItemList.
Per fare un esempio pratico, immaginiamo di avere una ListBox con l’elenco delle Categorie Prodotti e vogliamo che, alla selezione di una categoria, venga visualizzato l’elenco dei prodotti presenti in quella categoria. ovviamente, in un’applicazione “non” MVVM la soluzione sarebbe la gestione dell’evento di selezione e cosi via…
In un’applicazione MVVM, invece, lo scopo principale è proprio quello di disaccoppiare UI dalla logica evitando, quindi, l’uso degli eventi a favore dei Commands di WPF.
Le soluzione da applicare con il MVVM sono diverse. Le due che ho preferito sono:
1) Utilizzo di una property SelectedCategory nel ViewModel che viene “bindata” alla property SelectedItem della ListBox. In questo modo, nel setter della property possiamo gestire il cambio di categoria con le relative operazioni da eseguire in questo caso. Troppo macchinosa.
2) Più elegante, invece, è l’uso di Attached Behavior di WPF. Questo pattern, basato sulle Attached Property, permette di incapsulare un comportamento in una classe al di fuori del VisualTree applicando questo, impostando la attache property relativa ai soli controlli desiderati. Come nella figura seguente in cui viene associato un SelectionChanged ad un command che effettua alcune operazioni.

Su CodeProject trovate un interessante articolo di Josh Smith Introduction to Attached Behaviors in WPF mentre, in italiano, come al solito c’è l’amico Corrado che ci toglie sempre ogni dubbio WPF Attached Behaviors 
E’ stato rilasciato proprio ieri dal team di WPF una prima versione beta del toolkit che permette la creazione di un’applicazione wpf basata su Model-View-ViewModel in pochi e semplici passi un pò come accade con il framework MVC in ambito web.
Dopo l’installazione, infatti, avremo a disposizione un nuovo template in Visual Studio per creare, appunto, un applicazione MVVM.
Sicuramente lo mostrerò nella mia sessione sul MVVM durante il workshop del 15 maggio 
Maggiori info e download su codeplex