我正在开发一个WinForms应用程序,在一个表单上,我使用GroupBox将相关控件组合在一起。我想以特定方式设置标题的样式(例如,使标题加粗)。通过改变GroupBox的样式,我可以自定义标题,但它也改变了GroupBox中控件的样式。
到目前为止,没有那么多的子控件,所以我将他们的样式重新设置为默认值,但我认为必须有更好的方法......但我还没弄明白远。
有办法吗?
答案 0 :(得分:8)
最简单的方法是将另一个面板放在GroupBox中,这样您只需重置字体一次。
还有很多其他解决方案,但它们都需要更多代码。这样可以保持简洁。
答案 1 :(得分:1)
Control.Font
(以及其他与样式相关的属性)的实现方式是,如果它没有显式设置,则它会向其父级询问Font
。显然,这意味着您必须将其单独设置为所有子控件,以确保它们不受父样式更改的影响。
也许您应该看看所有者绘制GroupBox
字幕?
答案 2 :(得分:0)
我解决了这个问题,删除了默认的组标题,并在相同位置默认组标题的组中添加了一个粗体新标签。