ToolStrip コントロールは、テーマとスタイルを簡単にサポートします。 ToolStrip.Renderer プロパティまたは ToolStripManager.Renderer プロパティをカスタム レンダラーに設定することで、完全にカスタムの外観と動作 (外観) を実現できます。
個々の ToolStrip、MenuStrip、ContextMenuStrip、または StatusStrip コントロールにレンダラーを割り当てたり、Renderer プロパティを ToolStrip.RenderModeに設定することで、ToolStripRenderMode.ManagerRenderMode プロパティを使用してすべてのオブジェクトに影響を与えることができます。
注
RenderMode は、Custom の値が ToolStrip.Rendererされていない場合にのみ、null
を返します。
カスタム レンダラーを作成するには
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