ToolStrip コントロールには、関連する次のレンダリング (描画) クラスがあります。
ToolStripSystemRenderer は、オペレーティング システムの外観とスタイルを提供します。
ToolStripProfessionalRenderer は、Microsoft Office の外観とスタイルを提供します。
ToolStripRenderer は、他の 2 つの描画クラスの抽象基本クラスです。
ToolStrip をカスタム描画 (オーナー描画とも呼ばれます) するには、レンダラー クラスのいずれかをオーバーライドし、レンダリング ロジックの要素を変更します。
詳細については ユーザー コントロールのカスタム描画のサンプル および ユーザー コントロールのカスタム描画のサンプル.
次の手順では、カスタム描画のさまざまな側面について説明します。
設定されているレンダラーを切り替えるには
RenderMode プロパティを任意の ToolStripRenderMode 値に設定します。
ManagerRenderMode では、静的 RenderMode によりアプリケーションのレンダラーが決定します。 ToolStripRenderMode のその他の値には、Custom、Professional、および System があります。
Microsoft Office スタイルの境界線を直線に変更するには
- ToolStripProfessionalRenderer.OnRenderToolStripBorder をオーバーライドします。ただし、基本クラスは呼び出さないでください。
注意
ToolStripRenderer、ToolStripSystemRenderer、および ToolStripProfessionalRenderer には、このメソッドのバージョンがあります。
ProfessionalColorTable を変更するには
ProfessionalColorTable をオーバーライドして任意の色を変更します。
[Visual Basic]
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _ System.EventArgs) Handles Me.Load Dim t As MyColorTable = New MyColorTable ToolStrip1.Renderer = New ToolStripProfessionalRenderer(t) End Sub Class MyColorTable Inherits ProfessionalColorTable Public Overrides ReadOnly Property ButtonPressedGradientBegin() As Color Get Return Color.Red End Get End Property Public Overrides ReadOnly Property ButtonPressedGradientMiddle() _ As System.Drawing.Color Get Return Color.Blue End Get End Property Public Overrides ReadOnly Property ButtonPressedGradientEnd() _ As System.Drawing.Color Get Return Color.Green End Get End Property Public Overrides ReadOnly Property ButtonSelectedGradientBegin() _ As Color Get Return Color.Yellow End Get End Property Public Overrides ReadOnly Property ButtonSelectedGradientMiddle() As System.Drawing.Color Get Return Color.Orange End Get End Property Public Overrides ReadOnly Property ButtonSelectedGradientEnd() _ As System.Drawing.Color Get Return Color.Violet End Get End Property End Class
アプリケーション内のすべての ToolStrip コントロールの描画を変更するには
ToolStripManager.RenderMode プロパティを使用して、設定されているレンダラーのいずれかを選択します。
ToolStripManager.Renderer を使用してカスタム レンダラーを割り当てます。
ToolStrip.RenderMode が ManagerRenderMode の既定値に設定されていることを確認します。
アプリケーション全体の Microsoft Office 色設定をオフにするには
- ToolStripManager.VisualStylesEnabled に false を設定します。
特定の ToolStrip コントロールの Microsoft Office 色設定をオフにする
次のようなコードを使用します。
[Visual Basic]
Dim colorTable As ProfessionalColorTable() colorTable.UseSystemColors = True Dim toolStrip.Renderer As ToolStripProfessionalRenderer(colorTable)
[C#]
ProfessionalColorTable colorTable = new ProfessionalColorTable(); colorTable.UseSystemColors = true; toolStrip.Renderer = new ToolStripProfessionalRenderer(colorTable);
参照
処理手順
方法 : Windows フォームに ToolStrip コントロールのカスタム レンダラーを作成して設定する
参照
ToolStrip コントロールの概要 (Windows フォーム)