Comment : créer et définir un convertisseur personnalisé pour le contrôle ToolStrip dans les Windows Forms

Les contrôles ToolStrip fournissent une prise en charge simple pour les thèmes et les styles. Vous pouvez personnaliser totalement l'aspect et le comportement en affectant à la propriété ToolStrip.Renderer ou ToolStripManager.Renderer un convertisseur personnalisé.

Vous pouvez assigner des convertisseurs à chaque contrôle ToolStrip, MenuStrip, ContextMenuStrip ou StatusStrip ; vous pouvez également utiliser la propriété Renderer pour tous les objets en affectant à la propriété ToolStrip.RenderMode la valeur ToolStripRenderMode.ManagerRenderMode.

Notes

RenderMode ne retourne Custom que si la valeur de ToolStrip.Renderer n'est pas null.

Pour créer un convertisseur personnalisé

  1. Étendez la classe ToolStripRenderer.

  2. Implémentez le rendu personnalisé souhaité en substituant les membres On… appropriés

    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);
        }
    }
    

Pour définir le convertisseur personnalisé en tant que convertisseur actuel

  1. Pour définir le convertisseur personnalisé pour ToolStrip, affectez à la propriété ToolStrip.Renderer le convertisseur personnalisé.

    toolStrip1.Renderer = New RedTextRenderer()
    

    [C#]

    toolStrip1.Renderer = new RedTextRenderer();
    
  2. De même, pour définir le convertisseur personnalisé pour toutes les classes ToolStrip contenues dans votre application, affectez à la propriété ToolStripManager.Renderer le convertisseur personnalisé et à la propriété RenderMode la valeur ManagerRenderMode.

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

    [C#]

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

Voir aussi

Référence

Renderer

ToolStripRenderer

RenderMode

Vue d'ensemble du contrôle ToolStrip (Windows Forms)

Concepts

Architecture du contrôle ToolStrip

Résumé de la technologie ToolStrip