【问题标题】:Why does my WPF GroupBox looks so weird?为什么我的 WPF GroupBox 看起来很奇怪?
【发布时间】:2016-04-29 00:16:52
【问题描述】:

我的应用程序中没有任何样式设置!

更新:

【问题讨论】:

  • 你能在一个只有这个的简单应用程序中重现吗?如果是,请发布应用程序。
  • 也许您使用的主题覆盖了 GroupBox 的默认样式。
  • 这个输出在哪个OS XP/Vista/win7?
  • 我已在屏幕截图中使用示例 xaml 更新了问题。没有其他文件设置该样式。它只是一个只有一个窗口的测试项目。

标签: wpf styles groupbox


【解决方案1】:

这种行为似乎是默认行为,至少在 Windows 7 下according to this thread

看起来GroupBox 边框实际上在内部和外部都有一个额外的白色边框:只需尝试增加BorderThickness,您就会明白我的意思了。

此外,与另一个控件(例如Label)进行比较,请注意,当您在其周围定义边框时,即使是圆形边框,也没有白色“阴影”。

据我所知,解决此问题的唯一方法(如果您需要)是自己为GroupBox 定义一个ControlTemplate。上面发布的链接包含一个很好的例子:注意将Borders 周围的BorderBrush 设置为Transparent 的答案。

可以在 in the GroupBox MSDN documentation 找到该自定义模板的规范示例。

(在一个不相关的注释中,示例中的 BorderGapMaskConverter 很有趣 - 这就是 GroupBox 知道如何将标题下方的边框部分呈现为透明...整洁。:))

【讨论】:

  • 关于您的 msdn 链接,没有任何 MSFT 的回答。当然,这是我非常假设的 Windows 7 错误...该死的我完全忘记了这个赏金,因为我在前几天用自己的 controltemplate 解决了这个问题:P 好吧,至少你知道如何使用谷歌去摆脱我的一半SO life :/ thx buddy ;-)
  • 感谢您指出 BorderGapMaskConverter !确实很有趣!
  • 作为 WPF 的新手,谁能解释一下我实际上会用该模板做什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-15
  • 2011-02-12
  • 1970-01-01
  • 1970-01-01
  • 2021-01-19
相关资源
最近更新 更多