Sarò sincero: a me non piacciono le applicazioni che fanno uso delle finestre MDI, soprattutto perché ormai non li usa più nessuno dei big del software.
Comunque, ai Community Days 2 me l'hanno chiesto e siccome rientra fra le cose che mancano in WPF ho pensato di provare a scrivere dei controlli per fornire questa funzionalità. C'è da dire che prima di tutto è un limite dovuto alle finestre Win32 e non si possono usare le caratteristiche di Win32.
Va quindi ripensata ogni finestra MDI come un HeaderedContentControl con un header (il titolo) e il content (quello che si vuole). Da lì sono partito, ho aggiunto le funzionalità di resize e di move e ho creato un pannello "alla Canvas" più evoluto.
Quello che spesso cerco di far capire è che quello che apparentemente sembrerebbe una mancanza, in realtà vuol dire non avere le mani legate e poter fare qualsiasi cosa.
A questo punto ho quindi un pannello che fa da desktop. L'ho quindi inserito quattro volte nel mio Selector3D per fare il famoso cubo 3D alla Linux. Devo dire che farlo non mi ha impegnato particolarmente, anzi, la difficoltà è stata solo nel limite della mia fantasia. Ecco il risultato:
Presto metterò sorgenti ed esempio nel lab.
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
- WPF e Siverlight: Dispatcher e finestre modali, il 7 aprile 2009 alle 11:43
- Styles Explorer: decompilatore BAML, il 4 aprile 2008 alle 23:57
- Un'occhiata a Silverlight 2.0, il 6 marzo 2008 alle 23:13
- DirectShow e WPF: soluzione finale, il 28 gennaio 2008 alle 17:20
- Sorgenti custom per MediaElement di WPF, il 23 gennaio 2008 alle 12:49
- Anonymous type di C# 3.0, il 4 gennaio 2008 alle 14:21