Freigeben über


Vorgehensweise: Erstellen und Festlegen eines benutzerdefinierten Renderers für das ToolStrip-Steuerelement in Windows Forms

ToolStrip-Steuerelemente bieten einfache Unterstützung für Designs und Stile. Sie können ein vollständig benutzerdefiniertes Aussehen und Verhalten (Look & Feel) erreichen, indem Sie entweder die ToolStrip.Renderer- oder die ToolStripManager.Renderer-Eigenschaft auf einen benutzerdefinierten Renderer festlegen.

Sie können jedem einzelnen ToolStrip-, MenuStrip-, ContextMenuStrip- oder StatusStrip-Steuerelement einen Renderer zuweisen oder die Renderer-Eigenschaft verwenden, um alle Objekte zu beeinflussen, indem Sie die ToolStrip.RenderMode-Eigenschaft auf ToolStripRenderMode.ManagerRenderMode festlegen.

Anmerkung

RenderMode gibt nur Custom zurück, wenn der Wert von ToolStrip.Renderer nicht nullist.

So erstellen Sie einen benutzerdefinierten Renderer

  1. Erweitern Sie die ToolStripRenderer-Klasse.

  2. Implementieren Sie das gewünschte benutzerdefinierte Rendering, 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  
    
    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 auf den aktuellen Renderer fest

  1. Um den benutzerdefinierten Renderer für ein ToolStrip-Element festzulegen, legen Sie die ToolStrip.Renderer-Eigenschaft auf den benutzerdefinierten Renderer fest.

    toolStrip1.Renderer = New RedTextRenderer()  
    
    toolStrip1.Renderer = new RedTextRenderer();  
    
  2. Oder um den benutzerdefinierten Renderer für alle ToolStrip-Klassen in Ihrer Anwendung festzulegen: Legen Sie die ToolStripManager.Renderer-Eigenschaft auf den benutzerdefinierten Renderer und die RenderMode-Eigenschaft auf ManagerRenderModefest.

    toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode  
    ToolStripManager.Renderer = New RedTextRenderer()  
    
    toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode;  
    ToolStripManager.Renderer = new RedTextRenderer();  
    

Weitere Informationen