【问题标题】:WPF MessageBox looks unstyled, while WindowsForms MessageBox looks goodWPF MessageBox 看起来没有样式,而 WindowsForms MessageBox 看起来不错
【发布时间】:2015-01-05 04:38:01
【问题描述】:

由于某种原因,WPF MessageBox 看起来比 WindowsForms 中的要差。 WPF 没有视觉风格。

如何将 Windows 样式应用于 WPF 消息框?

Windows 窗体

WPF

【问题讨论】:

  • 我想要默认的 Windows,就像在 WindowsForms 中一样,而不是自定义绘制的东西。
  • 看起来使用了 Windows 7 样式,即使您显然是在 Windows 8.x 下。这是 WPF 中的一个错误。您应该报告连接/创建 UserVoice 请求。
  • 这是 Windows 经典风格,甚至不是 Windows 7。我认为现在创建错误请求对我没有帮助。是否有任何修复,例如某种样式清单?
  • @bytecode77 你仍然应该报告这个错误。否则它永远不会得到修复。查看 WPF 内部代码,它似乎只是在内部调用 user32.dll。我想知道为什么 winforms 看起来会有所不同。

标签: c# wpf winforms messagebox


【解决方案1】:

可以通过添加应用程序清单来解决此问题(添加 -> 新项目 -> 应用程序清单文件)

    ...
</trustInfo>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="*"
            publicKeyToken="6595b64144ccf1df"
            language="*" />
    </dependentAssembly>
</dependency>

“项目属性”下,将“清单”指向您刚刚创建的文件。这是可选的,因为清单也可以与 EXE 文件一起部署。

注意:此清单可用于任何需要“样式化”的可执行文件,不仅是 WPF。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-25
    • 1970-01-01
    • 2013-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多