WPF theme that looks like Windows XP/WinForms - wpf

I'm looking for a WPF theme that looks like Windows XP/WinForms. Basically I want all the WPF goodness, but without my business analyst freaking out because the colors look different.
(Pity too, I really like the themes I found on CodePlex.)

If you don't override styles/templates of default controls they will look natively in any Windows theme. Your app will look like XP under XP, like Vista under Vista, and so on.
Just in case: XP theme is called Luna. If you need your app to use it under any Windows OS - look for documentation (MSDN) about theming in WPF.

Related

WPF Ribbon changes title bar style in XP

[EDITED]
After several tries, I found out it was the Microsoft WPF Ribbon that causes the title bar style not rendering correctly.
Application without Ribbon in XP:
Application with Ribbon in XP:
I have already set the theme to be XP style. Still not fix. It is a bug in Microsoft Ribbon or am I missing something? On Window 7, on the other hand, renders OK.
Develop on WPF C# .NET 4, VS2010.
Why do you care? this is a user setting to have Aero enabled or not in Vista or 7 and theming enabled or not in XP like in 2 and 3 pictures you sent.
In general you should ignore this. Office 2007 and 2010 with ribbon UI renders the same but because ribbons are skinning the application windows completely.
My suggestion is to either use skins and do the same or simply ignote this because if I use Vista with Aero enabled I would not like your App to look like classic Win2000 applications.
This is anyways an issue with the window title bar as it will use the default theme of the OS you are using.
I suggest you to neutralize the style by implementing a custom window style that takes the windows 7 look n feel for all windows ion your applications. Have a look at the MessageBox control from latest extended WPF toolkit.
It has a windows 7 style themse that looks exactly same on all the above OS if you use
Window.AllowsTransparency="False"
Window.WindowStyle="None"
Window.Style="{StaticResource Windows7WindowStyle}"

Windows 7 Aero theme

I've already check stackoverflow and the web for my problem, but I can't find any answer.
I can't find a way to have the Windows 7 Aero theme working. I mean, I have the Aero style from PresentationFramework.Aero, but it has the Vista look, the blue selection is not exactly the same.
This is the Windows 7 theme in Windows Explorer
And this is mine (the Aero look, I got by follow this thread)
I Have already managed to do the same ,as windows 7, by hand, but it's a pain to have to style every control, in order to retrieve this effect. Do you know if there is any way to get the Windows 7 Aero?
There is no way to achieve this out-of-the-box. The default WPF List- and TreeView controls are extremely lacking in functionality (compared to the native counterparts) and the whole WPF Aero theme is severely missing polish. It wasn't updated for Windows 7 (which Aero-variant looks also better than Vista), and it doesn't even look like Vista. Apparently many people are satisfied with a half-assed copycat theme (also judging by lots of fake-looking Windows styles in UI toolkits).

WPF Application have Win2000 style, but I'm using Win XP

Why does my application have the Windows 2000 style? I have the normal Windows XP - Style but the buttons and all the other controlls look like in Windows 2000.
By default, WPF will use your system's current theme, i.e., if you are on Windows 7, then the Aero theme will be the default. The same will occur with Vista and XP themes. When WPF is unable to detect your theme, WPF will fall-back to the default "Classic" theme.
If you are seeing the Classic win2k theme, then a likely cause is you have modified your system's theme with something like the Zune theme or some other custom theme.

How to get "native" look for WPF widgets on windows XP?

I have just started playing around with WPF.
I've noticed that while some widgets automatically pick up the native look and feel (e.g, buttons, menus), some others don't (e.g., labels, panels and windows have white backgrounds).
How do I make all widgets look normal by default in WPF?
This is the way the templates are defined in the PresentationFramework.Luna assembly. You can look at all of the default templates for all 6 Windows themes by using the ShowMeTheTemplate tool found here: http://www.sellsbrothers.com/tools/#ShowMeTheTemplate
-Jon

How do I get the native "look and feel" using WPF?

I've just started developing a WPF application. This is not my first WPF app, but it will be the first that needs some polish. I know quite a bit about the "plumbing" of WPF such as binding, etc., but very little about how to polish it up. I don't need a snazzy UI. I just need something that looks like a native Windows app. For instance, if the app runs on XP, I want it to look like an XP app and pick up the user's UI theme. Same thing on Vista, etc.
How can I do this?
You should be able to put this into the application's OnLoad event to use the Vista theme, for example:
Uri uri = new Uri("PresentationFramework.Aero;V3.0.0.0;31bf3856ad364e35;component\\themes/aero.normalcolor.xaml", UriKind.Relative);
Resources.MergedDictionaries.Add(Application.LoadComponent(uri) as ResourceDictionary);
or for the Windows XP theme:
themes/Royale.normalcolor.xaml
You don't have to do anything - WPF does it for you.
EDIT: It does. Run it with Aero/Luna and then Classic.

Resources