[C#] Bug (?) avec la propriété TransparencyKey de la Form
Salut à tous, je crois avoir soulevé un bug avec la transparence de la Form en C#.
Si on fait ce code, tout est nickel : la Form s'affiche en plein écran, et est transparente :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
int x = 0, y = 0,
largeur = Screen.PrimaryScreen.WorkingArea.Width,
hauteur = Screen.PrimaryScreen.WorkingArea.Height;
Form f = new Form();
f.SetBounds(x, y, largeur, hauteur);
f.TransparencyKey = Color.Blue;
f.BackColor = Color.Blue;
f.ShowDialog(); |
Maintenant, je veux ajouter un Label à ma Form. Le Label doit aussi être transparent, et pour l'instant, je n'affiche rien dedans.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| int x = 0, y = 0,
largeur = Screen.PrimaryScreen.WorkingArea.Width,
hauteur = Screen.PrimaryScreen.WorkingArea.Height;
Form f = new Form();
f.SetBounds(x, y, largeur, hauteur);
f.TransparencyKey = Color.Blue;
f.BackColor = Color.Blue;
Label l = new Label();
l.BackColor = Color.Transparent;
l.SetBounds(x, y, largeur, hauteur);
f.Controls.Add(l);
f.ShowDialog(); |
Et là, chez moi tout du moins, ça ne marche plus. Le Label prend la couleur du TransparencyKey que j'ai affecté à la Form, cad bleu.
Le plus étrange est que le Label est bien transparent si on utilise des dimensions inférieures, par exemple x=300, y=300, largeur=500, hauteur=500.
Voilà, je suis bien embêté pour mon projet actuel. Pourriez-vous me dire, déjà, si le problème survient pareil chez vous ? Et ensuite, si quelqu'un avait une solution ou une explication à proposer...
Merci beaucoup.