Introducing theMatic–WPF Theme Generation Tool

Doing a custom control theme in WPF is no small undertaking. theMatic (currently very-much-in-alpha) hopes to take some of that pain away, especially for smaller teams that don’t have a dedicated designer, or for quick apps that you still want to give that ‘custom’ touch.

The vision is that you choose a set of control templates (which I collectively refer to as a design), some typography, and a number of colors that make up your theme: colors for control chrome, colors for branding, colors for window foreground text and background. ThemeMatic gives you a live preview of these changes as you make them. Then when you’re done you click ‘Generate’ and out pops a ‘theme’ assembly that contains all the XAML that describes your theme. You reference this from your main application, and you’re done.

TheMatic is still in definitely alpha – the whole generate process is not done yet, and the three sets of control templates: Simple Styles, JetPack and Cosmopolitan have varying levels of support for the theme colors. It’s a work in progress, but I wanted to give everyone a preview to get some feedback. You can see it in action in this video:

ThemeMatic Preview from Joseph Cooney on Vimeo.

You can download the code from codeplex http://thematic.codeplex.com/ . In time I’d like to add support for more designs (from the WPF themes project), and further refine the current ones (they need a lot of work), but I’d love to know what additional features people would like to see.

Thanks to Scott Barnes for his feedback on how this app should work. Please leave comments here or on the codeplex site if you want to make any suggestions.

Comments

shaggygi
Good Stuff! Instead ( or in addition to ) of generating a Themed WPF template project, could you generate XAML and DLL similar to the ones in the WPF Themes from http://wpf.codeplex.com/?

I would rather have the ability to drop these files in my own project ( new or old ).

Also, do you know why the TextBlock control is not used with WPF Themes today? I wish it would be added because if I change from a light to dark theme or vise versa, then I have to change the TextBlock Foreground color.

One last thing… I noticed the JetPack theme in your video. Is this supported for WPF today? I thought it was only released for Silverlight. If so, could you release a basic demo on how to add the JetPack theme to a WPF app?

Keep up the good work. Hope to use in the future.

3/11/2010 4:53:35 PM
Joseph Cooney
Hi shaggygi - what you suggest re: assembly generation is what I had in mind, obviously I didn’t describe that part very well. I’ll update the article to try and clarify. Thanks for your other suggestions. re: the JetPack theme - I’m standing on the shoulders of others there. I used the code from http://blog.lexique-du-net.com/index.php?post/2010/10/14/Migrate-the-Jetpack-theme-from-Silverlight-to-WPF
3/11/2010 5:27:41 PM
john
When it comes to themes and styles, screenshots say more than thausand words
4/11/2010 3:53:14 AM
alvinashcraft.com
Pingback from alvinashcraft.com

Dew Drop – November 4, 2010 | Alvin Ashcraft's Morning Dew

4/11/2010 5:41:47 AM
satish
Error 2 Source file ‘Views\PropertiesView.xaml.cs’ could not be found. I m getting this error when i tried to bulid the application.. Watz the problem
5/11/2010 10:25:00 PM
Microsoft Weblogs
Windows Client Developer Roundup 049 for 11/22/2010

This is Windows Client Developer roundup #49. The Windows Client Developer Roundup aggregates information

21/11/2010 11:06:12 PM