在WPF中应用未签名的Windows主题

在WPF中应用未签名的Windows主题,wpf,themes,Wpf,Themes,我正在使用DA(未签名主题)的Soft7 2.0,并使用UxStyle服务加载它 大多数应用程序都能很好地调整UI,但WPF应用程序不能 如何使WPF应用程序也使用Soft7 UI?我不想在WPF上强制某个主题,我只是希望它使用当前的Windows主题 我正在运行Windows 7 x64。WPF和Win32是非常不同的技术,这就是为什么将WPF移植到新的操作系统如此容易的原因:它实际上不依赖Win32 当涉及到自定义主题时,WPF模板完全改变了游戏规则:WPF中的自定义主题功能更强大,但也与W

我正在使用DA(未签名主题)的Soft7 2.0,并使用UxStyle服务加载它

大多数应用程序都能很好地调整UI,但WPF应用程序不能

如何使WPF应用程序也使用Soft7 UI?我不想在WPF上强制某个主题,我只是希望它使用当前的Windows主题


我正在运行Windows 7 x64。

WPF和Win32是非常不同的技术,这就是为什么将WPF移植到新的操作系统如此容易的原因:它实际上不依赖Win32

当涉及到自定义主题时,WPF模板完全改变了游戏规则:WPF中的自定义主题功能更强大,但也与Win32非常不同。这意味着主题供应商必须为Win32和WPF实现他们的主题

如果系统主题同时包含Win32和WPF DLL,则只需确保WPF DLL位于应用程序目录或GAC中。WPF将根据注册的主题名自动加载并使用它。在包含WPF DLL的系统上安装主题应自动在GAC中注册


如果主题只包含Win32代码,而不包含任何WPF模板,那么从WPF获得相同外观的唯一方法就是编写自己的模板,使其与主题中的模板匹配。幸运的是,这很容易做到。

这确实回答了我的问题(+1)。我只能在主题文件夹中找到1个dll(shellstyle.dll)。但是正如我所说的,我不想使用特定的风格,所以重新创建主题并不是一个真正的选择。而且,即使是标准的Aero主题似乎也只使用1个dll。那这是怎么回事?我可以要求艺术家更新他的主题吗?在GAC中,你可以找到PresentationFramework.Aero.dll,这是WPF的Aero主题。艺术家必须创建一个类似的DLL并在GAC中注册。