3 Réponses :
C'est un bug dans le rendu "système", détails dans Rapport de bogue .
La réponse de Microsoft donne une solution de contournement très facile: p>
1) Créer une sous-classe de Toolstripsystemrenderer code>, Remplacer Onrendertoolstripborder code> et En ce qui concerne un NO-OP: P> toolStrip3.Renderer = new MySR();
+1, mais j'ai édité la réponse à Inclure i> la réponse plutôt que de le pointer uniquement. Stackoverflow doit rester seul, les liens externes peuvent pourrir. Ils font une bonne adjonction, mais le contenu principal devrait être sur lui-même.
Pourquoi cela arrête-t-il ma candidature?
Vous voudrez peut-être ajouter une vérification de type pour éviter la bordure manquante sur manquée aussi, réglage ToolstripDropDownMenu code> / etc. (Depuis hérité de Toolstrip code>, il démarre automatiquement la même utilisation personnalisée de rendu personnalisé): ToolstripDropDownMenu code> La bordure n'est pas si notable lors de l'utilisation de < Code> ToolstripsystemRenderer Code> Mais deviennent de véritables yeux avec ToolstriProfessionalRenderer code>. p> system.windows.forms.toolstripmanager.renderer = nouveau mysR (); < / Code> pourrait être utile si vous voulez que tous les Toolstrip code> instances appwide à utiliser mysR code> par défaut. p> p>
Cette classe est plus complète que les autres!
public class ToolStripRender : ToolStripProfessionalRenderer
{
public ToolStripRender() : base() { }
protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e)
{
if (!(e.ToolStrip is ToolStrip))
base.OnRenderToolStripBorder(e);
}
}
Comment avez-vous obtenu le fond blanc? Ce n'est pas standard.