Comment : créer et définir un convertisseur personnalisé pour le contrôle ToolStrip dans les Windows Forms
Mise à jour : novembre 2007
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.
![]() |
---|
RenderMode ne retourne Custom que si la valeur de ToolStrip.Renderer n'est pas null. |
Pour créer un convertisseur personnalisé
Étendez la classe ToolStripRenderer.
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
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();
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
Concepts
Architecture du contrôle ToolStrip
Résumé de la technologie ToolStrip