Finestre MDI in WPF

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.

Commenti

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.



Segnala su: Facebook MSDN Social Twitter Segnalo Wikio Diggita Technorati Stumbleupon Google Yahoo FriendFeed Delicious Furl

Nella stessa categoria
I più letti del mese
TagCloud
.NET Framework, .NET Framework 2.0, .NET Framework 3.0, .NET Framework 3.5, .NET Framework 4.0, ADO.NET Entity Framework, AJAX, Architettura, ASP, ASP.NET, ASP.NET 2.0, ASP.NET 2.0 per tutti, ASP.NET 4.0, ASPItalia.com, Custom Control, Databinding, Datagrid, HttpRuntime, IIS, Javascript, LINQ, LINQ to Entities, LINQ to SQL, Media Center, Microsoft Expression, Object Oriented Programming, Off Topic, PDC 2008, Silverlight, Silverlight - animazioni, Silverlight 2.0, Silverlight 3.0, User Control, Visual Studio, Windows 7, Windows CardSpace, Windows Client, Windows Communication Foundation, Windows Live Services, Windows Presentation Foundation, Windows Server, Windows Vista, Windows Workflow Foundation, XAML, XBox 360, XHTML, XML, XPS, XSLT
BLOG INFO
  • 199 post, 86 commenti, 42 trackback
  • Feed blog e contenuti tecnici: RSS
  • Feed blog: RSS Atom
IN EVIDENZA