J'ai un problème vraiment étrange et je me demande si c'est un bug visuel ou si je fais quelque chose de mal. Voici un code simple d'une classe Panel overriden:Le bug de Visual? (un problème avec le panneau overrid)
public class MyPanel : Panel
{
private TableLayoutPanel table = new TableLayoutPanel();
public MyPanel()
{
this.Controls.Add(table);
table.BackColor = Color.Green;
}
public override System.Drawing.Color BackColor
{
get
{
return table.BackColor;
}
set
{
table.BackColor = value;
}
}
}
Si je mets le contrôle sur un formulaire et de construire le projet, visuel génère une erreur et ouvrir à nouveau le projet sera impossible. Cependant, si je change TableLayoutPanel en TextBox, cela fonctionne très bien. En outre, si j'ai défini BackColor dans le constructeur avant d'ajouter le contrôle à la collection Controls, cela fonctionne également correctement. Quel est le problème? ou est-ce juste un bug?
alors pourquoi cela fonctionnerait-il avec TextBox? – agnieszka
et je dois ajouter que j'ai vérifié que la propriété GetColor get est utilisée après avoir terminé le constructeur de MyPanel – agnieszka
en fait vous aviez raison. Merci! J'ai passé beaucoup de temps avec ce problème – agnieszka