Windows 10 Theme for a Properties Dialog

Today I played around with some code in an WPF application that opens a (COM-style) properties dialog.

When opened outside my application, the dialog looked like this:

20201012_C920_Windows

But when I opened the dialog from my code, it looked like this:

20201012_C920_WPF

The solution is simple but appears blog-worthy to me because I had a hard time searching the Web using rather unspecific search terms like “properties dialog”, theme, style, etc.

In the end I came across a theme-related Microsoft article for C++ mentioning a manifest file and connected the dots to a StackOverflow question/answer about changing the Windows User Account Control level for a C#/WPF application using a custom manifest.

What to do

Create the custom manifest file

  • In Visual Studio (2019), open the context menu of the project for the WPF application.
  • Add > New item.
  • Ctrl+E (to jump to the search box), enter “manifest”.
  • Press the “Add” button to add the “app.manifest” file to the project.
  • Visual Studio selects the file automatically (see project properties > Application > Resources > Icon and manifest > Manifest)

Edit the manifest

  • Open the “app.manifest” file.
  • Scroll to the bottom.
  • Uncomment the section behind the “Enable themes for Windows common controls and dialogs (Windows XP and later)” comment.
  • Rebuild.

That’s it!

In case you are wondering about my (webcam) experiment: This will be the topic of an upcoming blog post.

No Comments