Gewusst wie: Erstellen und Festlegen eines benutzerdefinierten Renderers für das ToolStrip-Steuerelement in Windows Forms
ToolStrip-Steuerelemente ermöglichen die einfache Unterstützung von Designs und Stilen. Sie können das Aussehen und Verhalten vollständig anpassen, indem Sie entweder die ToolStrip.Renderer-Eigenschaft oder die ToolStripManager.Renderer-Eigenschaft auf einen benutzerdefinierten Renderer festlegen.
Sie können Renderer jedem einzelnen Steuerelement vom Typ ToolStrip, MenuStrip, ContextMenuStrip oder StatusStrip zuordnen oder die Renderer-Eigenschaft verwenden, um alle Objekte anzupassen, indem Sie die ToolStrip.RenderMode-Eigenschaft auf ToolStripRenderMode.ManagerRenderMode festlegen.
Tipp
RenderMode gibt nur Custom zurück, wenn der Wert von ToolStrip.Renderer nicht null lautet.
So erstellen Sie einen benutzerdefinierten Renderer
Erweitern Sie die ToolStripRenderer-Klasse.
Implementieren Sie den gewünschten benutzerdefinierten Renderer, indem Sie die entsprechenden On…-Member überschreiben.
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
[C#]
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); } }
So legen Sie den benutzerdefinierten Renderer als aktuellen Renderer fest
Um den benutzerdefinierten Renderer für einen ToolStrip festzulegen, legen Sie die ToolStrip.Renderer-Eigenschaft auf den benutzerdefinierten Renderer fest.
toolStrip1.Renderer = New RedTextRenderer()
[C#]
toolStrip1.Renderer = new RedTextRenderer();
Um den benutzerdefinierten Renderer für alle ToolStrip-Klassen in der Anwendung festzulegen, legen Sie die ToolStripManager.Renderer-Eigenschaft auf den benutzerdefinierten Renderer fest und die RenderMode-Eigenschaft auf ManagerRenderMode.
toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode ToolStripManager.Renderer = New RedTextRenderer()
[C#]
toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode; ToolStripManager.Renderer = new RedTextRenderer();
Siehe auch
Referenz
Übersicht über das ToolStrip-Steuerelement (Windows Forms)