Instrukcje: tworzenie i ustawienie niestandardowego modułu renderowania dla kontrolki ToolStrip w formularzach systemu Windows

ToolStrip Kontrolki zapewniają łatwą obsługę motywów i stylów. Możesz uzyskać całkowicie niestandardowy wygląd i zachowanie (wygląd i działanie), ToolStrip.RendererToolStripManager.Renderer ustawiając właściwość lub właściwość na niestandardowy program renderowy.

Program renderujący można przypisać do ToolStripposzczególnych kontrolek , MenuStrip, ContextMenuStriplub StatusStripRenderer za pomocą właściwości , aby wpłynąć na wszystkie obiekty, ustawiając właściwość ToolStrip.RenderMode na .ToolStripRenderMode.ManagerRenderMode

Uwaga

RenderMode Funkcja Custom zwraca wartość tylko wtedy, gdy wartość nie ToolStrip.Renderer jest wartością null.

Aby utworzyć niestandardowy renderator

  1. Rozszerzanie ToolStripRenderer klasy.

  2. Implementowanie żądanego renderowania niestandardowego przez zastąpienie odpowiednich elementów członkowskich 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);  
        }  
    }  
    

Aby ustawić niestandardowy program renderowany jako bieżący program renderowany

  1. Aby ustawić niestandardowy program renderowany dla jednego ToolStripobiektu , ustaw ToolStrip.Renderer właściwość na niestandardowy program renderer.

    toolStrip1.Renderer = New RedTextRenderer()  
    
    toolStrip1.Renderer = new RedTextRenderer();  
    
  2. Lub, aby ustawić niestandardowy program renderowany ToolStrip dla wszystkich klas zawartych w aplikacji: ToolStripManager.Renderer ustaw właściwość na niestandardowy program renderator i ustaw właściwość RenderMode na ManagerRenderMode.

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

Zobacz też