This Blog


Favorite Posts


Themes for WPF applications

I really really don't know how this one fell through the "sneak peek" cracks for DXperience v2009.2. We weren't actively trying to hide it, but possibly it's because we were waiting for our graphics artist Mike to complete the design work when suddenly the release was upon us and we all had collective amnesia.

The news is in two parts. First the good news, and then, in a break with tradition, the even better news.

The Good News

DXperience WPF ships with three new visual themes: Office 2007 Blue, Office 2007 Black, and Office 2007 Silver. Here's the blue theme in action in a demo:

Office 2007 Blue theme for WPF

The theme is applied to all of DevExpress' WPF controls.

The Even Better News

Ready? The new themes work on standard WPF controls as well.

Please, go back and reread that sentence again until it's sunk in. I'll wait.

Let's be more specific: With v2009 vol 2, any DevExpress visual theme for WPF can be applied to the standard WPF controls by simply specifying the theme name for a control or for its parent element.

No longer do you have to apply custom templates to the standard WPF controls (and fiddle around with them) to get the visual consistency you need across the whole application you built with our controls. We did it for you. We support the standard GroupBox, ScrollViewer, Scroll, RadioButton, Button, ListBox, Slider, TabControl, Separator, ToggleButton, RepeatButton, Label, ListBoxItem, TabItem, and ToolTip controls with this theme engine.

As a brief example, here's the Customization Window for a toolbar shown with a couple of different themes. The controls in this window are standard WPF controls.

First, in Office 2007 Black:

Black Customization Window

And then in Office 2007 Blue:

Blue Customization Window

Notice in particular the differences in the form, the tabbed items, and the button.

So, next time you need visual consistency and support for different themes in your WPF application, it's a one-stop shop: DevExpress and DXperience WPF.

Published Aug 26 2009, 01:00 PM by
Filed under: , , ,
Bookmark and Share


Nate Laff


This is awesome! What I'd still love to see though is letting the DX controls take on a themeless look so I can make my own stuff in Expression Design/Blend.

August 26, 2009 7:47 PM

Bruno Cossi


Absolutely brilliant.

I have liked your products for a while but I must say that v2009.2 so far seems to hold more improvements than I would have expected!


August 26, 2009 7:48 PM

sean kearon

Impressive stuff and a very solid "value add" too!

August 27, 2009 3:10 AM



But how do I activate this?  I don't seem to get it working.

kind regards

August 28, 2009 5:03 AM



is there a "simple" sample, which shows how one can switch between those themes?

Or is there a "simple" sample which uses one of those thmes?


August 28, 2009 10:05 AM

Daniel Stolt

Thanks for the update, Julian - great stuff!

Can you share any info on when DXGrid (and maybe your WPF controls in general) will support the standard Windows themes (Aero, Classic, Luna and Royale themes and their various variations)? All of these are supported by the MS built-in controls that ship as part of WPF. Essentially equivalent to the "UseXPStyle" mode of XtraGrid on WinForms.

In my opinion, not being able to use DXGrid out-of-box in an app designed to use the default current visual theme of the OS is a major obstacle. Certainly for me, it means I cannot make use of DXGrid in most of the applications I build.

August 30, 2009 5:49 PM

Thomas Grusche

How do I disable this behavior? I don't want standard WPF controls to be styled with DevEx styles.

August 31, 2009 2:37 AM

Mitchell Thraves

Great to see new theme's but a "lookless" vanilla version seems to be missing. Would be great to be able to use the DevEx controls so they matched the standard MS WPF control appearance straight out of the box.

I'm also struggling to find code examples of how to use the new themes.

September 1, 2009 7:23 AM


To set the theme, set dxc:ThemeManager.ThemeName="Theme Name", where "Theme Name" is "Azure", "Office2007Blue", "Office2007Black", or "Office2007Silver", on a control. The "dxc" namespace reference refers to the namespace "schemas.devexpress.com/.../core". When you set a control, all controls inside the control's hierarchy will get the same theme unless you set ThemeManager.ThemeName to a different theme.

Setting the ThemeName to an empty string or null doesn't appear to turn off the theme, however, so I'm not sure how to disable the theme for a specific control.

September 4, 2009 6:08 PM


Very good

December 1, 2009 2:52 AM

About Julian Bucknall (DevExpress)

Julian is the Chief Technology Officer at Developer Express. You can reach him directly at julianb@devexpress.com. You can also follow him on Twitter with the ID JMBucknall.

Chat is one of the many ways you can contact members of the DevExpress Team.
We are available Monday-Friday between 7:30am and 4:30pm Pacific Time.

If you need additional product information, write to us at info@devexpress.com or call us at +1 (818) 844-3383


DevExpress engineers feature-complete Presentation Controls, IDE Productivity Tools, Business Application Frameworks, and Reporting Systems for Visual Studio, Delphi, HTML5 or iOS & Android development. Whether using WPF, ASP.NET, WinForms, HTML5 or Windows 10, DevExpress tools help you build and deliver your best in the shortest time possible.

Copyright © 1998-2018 Developer Express Inc.
All trademarks or registered trademarks are property of their respective owners