2) Utilisez ce convertisseur pour votre toolstrip:
toolStrip3.Renderer=newMySR();
9
Vous pouvez ajouter à la vérification de type à ne pas rater sur la frontière ToolStripDropDownMenu/etc. (depuis hérité de ToolStripil commence même moteur de rendu personnalisé d'utilisation automatiquement):
Manqué ToolStripDropDownMenu frontière n'est pas si notable lors de l'utilisation ToolStripSystemRenderer mais deviennent de véritables horreur avec ToolStripProfessionalRenderer.
Aussi, System.Windows.Forms.ToolStripManager.Renderer = new MySR(); pourrait être utile si vous voulez que tous les ToolStrip instances appwide à utiliser MySR par défaut.
C'est un bug dans le "système" moteur de rendu, les détails ce rapport de bug.
La réponse de Microsoft donne un très simple solution de contournement:
1) Créer une sous-classe de
ToolStripSystemRenderer
remplaçantOnRenderToolStripBorder
et en faire un no-op:2) Utilisez ce convertisseur pour votre toolstrip:
Vous pouvez ajouter à la vérification de type à ne pas rater sur la frontière
ToolStripDropDownMenu
/etc. (depuis hérité deToolStrip
il commence même moteur de rendu personnalisé d'utilisation automatiquement):Manqué
ToolStripDropDownMenu
frontière n'est pas si notable lors de l'utilisationToolStripSystemRenderer
mais deviennent de véritables horreur avecToolStripProfessionalRenderer
.Aussi,
System.Windows.Forms.ToolStripManager.Renderer = new MySR();
pourrait être utile si vous voulez que tous lesToolStrip
instances appwide à utiliserMySR
par défaut.