Faire référence au formulaire dans le programme.
Bonjour,
Je me suis fais le petit programme suivant pour essayer de comprendre le fonctionnement des événements :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace even
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void b1_click(object sender, EventArgs e)
{
this.BackColor = System.Drawing.Color.Red;
}
private void b2_click(object sender, EventArgs e)
{
this.BackColor = System.Drawing.Color.Blue;
}
private void Form1_Load(object sender, EventArgs e)
{
Button b1 = new Button();
b1.Location = new Point(25, 25);
b1.Size = new System.Drawing.Size(75, 30);
b1.Text = "Rouge";
b1.Click += new EventHandler(b1_click);
Button b2 = new Button();
b2.Location = new Point(100, 25);
b2.Size = new System.Drawing.Size(75, 30);
b2.Text = "Bleu";
b2.Click += new EventHandler(b2_click);
this.Text = "Even";
this.Controls.Add(b1);
this.Controls.Add(b2);
}
}
} |
C'est très simple, il y a un formulaire, dans lequel je crée 2 boutons avec 2 événements liés. Quand je clique sur le bouton "rouge", le formulaire devient rouge, quand je clique sur le bouton "bleu", le formulaire devient... bleu vous êtes trop fort.
Mon problème c'est qu'en fait le formulaire ET les boutons deviennent rouge et bleu. Et je ne comprend pas pourquoi. Quand j'utilise "this" dans l'événement b1_click, je pensai faire référence au formulaire, et donc modifier que la couleur du formulaire.
Alors pourquoi le bouton change aussi de couleur ?
Merci.