使用UseCompatibleTextRendering通过表单控件循环

时间:2012-06-19 20:34:05

标签: vb.net forms

我试图找到一种方法在我的表单上的每个控件上使用 UseCompatibleTextRendering 属性。但是,当我使用下面的代码时,它似乎不是一个选项:

For Each ocontrol As Control In Form1.Controls
    ocontrol.UseCompatibleTextRendering = True
Next

ocontrol 似乎没有该选项,但具有该按钮的所有其他选项。如果我 Buttion1.UseCompatibleTextRendering = True 那么它就可以了。

任何帮助都会很棒!

1 个答案:

答案 0 :(得分:2)

它不属于Control的属性。只有Button,CheckListBox,GroupBox,Label,LinkLabel和PropertyGrid才具有该属性。这是有充分理由的,只有那些控件显示由Winforms而不是Windows呈现的文本。

请注意,此属性仅用于保持与在.NET 1.x中重新启动的应用程序的兼容性。当你有TextRenderer时,想要回退到GDI +文本绘图是非常不寻常的。它以与本机Windows控件相同的方式呈现文本,如TextBox,ComboBox,ListView,TreeView等。

您需要设置应用程序的默认值,而不是为每个控件设置它。单击项目+属性,应用程序选项卡,单击“查看应用程序事件”按钮。让课程看起来像这样:

Partial Friend Class MyApplication
    Protected Overloads Shared ReadOnly Property UseCompatibleTextRendering() As Boolean
        Get
            Return True
        End Get
    End Property
End Class