0

フォームの各コントロールでUseCompatibleTextRenderingプロパティを使用する方法を見つけようとしています。ただし、以下のコードを使用する場合、オプションではないようです。

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

ocontrolにはそのオプションがないようですが、ボタンの他​​のすべてのオプションがあります。Buttion1.UseCompatibleTextRendering = Trueを実行すると、問題なく動作します。

どんな助けでも素晴らしいでしょう!

4

1 に答える 1

2

Control のプロパティではありません。Button、CheckListBox、GroupBox、Label、LinkLabel、および PropertyGrid のみがプロパティを持ちます。これには十分な理由があります。これらのコントロールだけが、Windows ではなく Winforms によってレンダリングされたテキストを表示します。

このプロパティは、.NET 1.x で開始されたアプリとの互換性を維持するためにのみ存在することを考慮してください。TextRenderer を使用しているときに、GDI+ テキスト描画にフォールバックすることは非常にまれです。TextBox、ComboBox、ListView、TreeView などのネイティブ Windows コントロールと同じ方法でテキストをレンダリングします。

すべてのコントロールに設定するのではなく、アプリケーションのデフォルトを設定する必要があります。[プロジェクト + プロパティ] の [アプリケーション] タブで、[アプリケーション イベントの表示] ボタンをクリックします。クラスを次のようにします。

Partial Friend Class MyApplication
    Protected Overloads Shared ReadOnly Property UseCompatibleTextRendering() As Boolean
        Get
            Return True
        End Get
    End Property
End Class
于 2012-06-19T22:35:18.673 に答える