【发布时间】:2011-09-21 11:26:55
【问题描述】:
有没有办法阻止任何具有字体属性的控件自动从容器控件继承字体属性,例如 Panel、GroupBox 和 Form。
我尝试在容器上将 AutoScaleMode 设置为 None 但没有任何运气。
有什么建议吗?
【问题讨论】:
标签: windows winforms forms fonts
有没有办法阻止任何具有字体属性的控件自动从容器控件继承字体属性,例如 Panel、GroupBox 和 Form。
我尝试在容器上将 AutoScaleMode 设置为 None 但没有任何运气。
有什么建议吗?
【问题讨论】:
标签: windows winforms forms fonts
Font、ForeColor、BackColor 和 Cursor 是环境属性,这意味着如果未设置它们,则它们从父容器继承。
如果控件设置了 Font 属性,则不会使用环境字体。如果控件没有设置 Font 属性,则继承自父容器。
ambient 属性在基本控件类中设置,如 Label。该控件将 Font 定义为环境值。禁用它的唯一方法是覆盖 Font 属性,使其不是环境的。您可以创建扩展 Windows 窗体标签类的新控件类,如 MyLabel,然后覆盖 Font 属性,使其不是环境属性。构建应用程序后,可以将 MyLabel 类从工具箱拖到表单设计器中。
我没有看到禁用环境字体的实用程序。如果容器不小心换了字体,在什么情况下最好把字体保留为Windows选择的字体,这与用户当前设置的主题无关?
【讨论】: