Dragablz is getting quite feature rich now, so I have created a demo project to illustrate it in use with another UI library, MahApps. If you haven’t used MahApps with WPF, it’s a great Metro/ModernUI style and control library to bring your apps bang up to date.
Off the bat, if you are going to use Dragablz and MahApps together you will have to make a decision: use the MahApps MetroWindow, or the Dragablz DragablzWindow (or indeed your own)?
Each option has its advantages. Primarily; MetrowWindow is a rich Window, with flyouts & custom Window commands, and the DragablzWindow supports transparency to provide a better dragging effect. See the two gifs for illustration of this point.
Code and XAML-wise there is very little difference. The demo project on GitHub shows that very little change is required to use Dragablz and MahApps together regardless of how you choose to do it.
Download the project, build it in Visual Studio, and run both applications (DragablzWindowApp & MahAppsWindowApp). You will see the differences illustrated above, and you will also see very little difference in the XAML required. The MainWindow.xaml file for each project is almost identical:
- DragablzWindow MainWindow.xaml
- MetroWindow MainWindow.xaml
It’s also worth checking out the app.xaml to illustrate some of the styling info required.
4 thoughts on “Dragablz Meets MahApps”
There is any way (an event?) to know when a user changes tab?
Hey, this is a subclass of standard WPF TabControl, so .SelectionChanged should work.
That’s it. Thank you for your great work!