方法: Windows フォームに ToolStrip コントロールのカスタム レンダラーを作成して設定する
ToolStrip コントロールを使用すると、テーマとスタイルを簡単にサポートできます。 ToolStrip.Renderer プロパティか ToolStripManager.Renderer プロパティをカスタム レンダラーに設定することで、カスタムの外観と動作 (ルック アンド フィール) を完全に実現することができます。
ToolStrip コントロール、MenuStrip コントロール、ContextMenuStrip コントロールまたは StatusStrip コントロールにそれぞれ個別にレンダラーを割り当てることができます。または、ToolStrip.RenderMode プロパティを ToolStripRenderMode.ManagerRenderMode に設定することで、Renderer プロパティを使用して、すべてのオブジェクトに影響を与えることができます。
注意
RenderMode は、ToolStrip.Renderer の値が null
でない場合にのみ、Custom を返します。
カスタム レンダラー クラスを作成するには
ToolStripRenderer クラスを拡張します。
適切な On... メンバーをオーバーライドすることで、必要なカスタム レンダリングを実装します
Public Class RedTextRenderer Inherits System.Windows.Forms.ToolStripRenderer Protected Overrides Sub OnRenderItemText(ByVal e As _ ToolStripItemTextRenderEventArgs) e.TextColor = Color.Red e.TextFont = New Font("Helvetica", 7, FontStyle.Bold) MyBase.OnRenderItemText(e) End Sub End Class
public class RedTextRenderer : _ System.Windows.Forms.ToolStripRenderer { protected override void _ OnRenderItemText(ToolStripItemTextRenderEventArgs e) { e.TextColor = Color.Red; e.TextFont = new Font("Helvetica", 7, FontStyle.Bold); base.OnRenderItemText(e); } }
カスタム レンダラーを現在のレンダラーに設定するには
1 つの ToolStrip に対してカスタム レンダラーを設定するには、ToolStrip.Renderer プロパティをカスタム レンダラーに設定します。
toolStrip1.Renderer = New RedTextRenderer()
toolStrip1.Renderer = new RedTextRenderer();
または、アプリケーションに含まれるすべての ToolStrip クラスに対して、カスタム レンダラーを設定するには、ToolStripManager.Renderer プロパティをカスタム レンダラーに設定して、RenderMode プロパティを ManagerRenderModeに設定します。
toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode ToolStripManager.Renderer = New RedTextRenderer()
toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode; ToolStripManager.Renderer = new RedTextRenderer();
関連項目
.NET Desktop feedback