我仔细按照说明更改了WPF应用程序中标准对话框的样式,因此我创建了一个app.manifest,从创建的模板中取消注释了这一部分
<!-- Enable themes for Windows common controls and dialogs (Windows XP and later) -->
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
检查项目属性:Icon and Manifest-&gt;清单在组合中选择了app.manifest。重建项目......
仍然有这样糟糕的风格:
有什么想法吗?
使用64位Win 7,VS 2010 SP1,应用程序是为x86构建的
答案的答案
*编辑* Anton Tykhyy作为评论回答了这个问题。 Thx Anton
Anton的评论引述: “你是从VS内部运行项目吗?尝试直接运行可执行文件(开始 - >运行或资源管理器)。 - Anton Tykhyy”
答案 0 :(得分:3)
当您从VS内部运行项目时,VS实际运行的可执行文件不是您的构建输出.exe,而是具有扩展名.vshost.exe的特殊插页式可执行文件。此插页式可执行文件负责VS调试程序与新进程之间的通信,但它没有您指定的图标或清单。这就是为什么你会有不同的行为。
顺便说一句,“调试”选项卡下的项目设置中有一个名为“启用Visual Studio托管过程”的复选框。如果取消选中它,VS将直接运行输出.exe。
答案 1 :(得分:0)
您在assemblyIdentity标记中指定的所有属性都是coorect并给出您获得的tu结果。风格“糟糕”,因为你指定了“旧”风格。 (故意?)。
您的问题既不是OS版本也不是VS,而是您定位的程序集
Stephane Halimi