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

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.

Related

Authentic Windows 7 Theme in Windows 10?

I develop a WPF desktop application that runs in a Citrix environment which applies the Windows 7 Basic Theme to my application. As a result, I run Windows 7 on my dev workstation to make sure the UI renders as intended.
I would like to upgrade it to Windows 10, however, but I have to find means of running my app with the Windows 7 theme within Windows 10. Incidentally (and oddly), if I run my app in Windows XP compatibility mode on Windows 10, it renders with the Windows 7 theme, so surely the OS is able to render the theme. I'm not sure I want to do all the testing of my app with compatibility mode activated, though...
I am also aware of 3rd party theming solutions, but to rule out any discrepancies, I would like to use the authentic Windows 7 theme from Microsoft.
Are there any tricks/tweaks/hacks out there to simply enable the Windows 7 theme for my app in Windows 10?
The WPF Theme for Aero is located in the PresentationFramework.Aero library, so add that as a reference. Then, in your App.xaml add the following merged dictionary to override the default theme.
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/PresentationFramework.Aero;component/themes/Aero.NormalColor.xaml" />
</ResourceDictionary.MergedDictionaries>
I'm pleasantly surprised that they've finally updated WPF in .NET 4.5 to support Windows 8/10 themeing (they didn't at the start of Windows 8) with the following:
PresentationFramework.Aero2
PresentationFramework.AeroLite
Haven't seen it before today, need to work with .NET 4.5 more often ;)
Try making the form an MDI with child windows as MDI Childs use the Windows 7 style as their border, or add some references to PresentationFramework.Aero/AeroLite/Aero2 and apply it in your code

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).

Apply unsigned Windows theme in WPF

I am using Soft7 2.0 from DA (unsigned theme) and I'm using the UxStyle service to load it.
Most applications adjust their UI just fine, but not WPF apps.
How can I make WPF apps also use the Soft7 UI? I'm not looking to force a certain theme on WPF, I just want it to use the current Windows theme.
I'm running Windows 7 x64.
WPF and Win32 are very different technologies, which is why it is so easy to port WPF to new operating systems: It has practically no reliance on Win32.
When it comes to custom themes, WPF templates completely changes the ballgame: Custom themes in WPF are much more powerful but also very different from Win32. This means that theme vendors must implement their theme for both Win32 and WPF.
If system theme includes both a Win32 and a WPF DLL, all you need to do is make sure the WPF DLL is in your application directory or in the GAC. WPF will automatically load it and use it based on the registered theme name. Installing a theme on the system that includes a WPF DLL should automatically register it in the GAC.
If the theme includes only Win32 code and doesn't include any WPF templates, the only way to get the same look and feel from WPF is to code your own templates to match those in the theme. Fortunately this is very easy to do.

WPF theme that looks like Windows XP/WinForms

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.

Resources