Cet exemple de code vous montrera par un exemple, comment créer un contrôle dynamiquement, l'insérer sur un formulaire et s'abonner à ses événements.
Placez le code suivant dans un corps de méthode où vous souhaitez que le contrôle soit créé, par exemple le Form_Load.
Prenons le cas d'un bouton, la première étape consiste à créer l'objet et affecter des valeurs à ses propriétés :
// Création du bouton
System.Windows.Forms.Button button = new Button();
button.Text = "Click me!";
button.Location = new Point(25, 25); // Définition de la position du bouton
La seconde étape, s'abonner à un événement. Pour cela, il faut créer la méthode qui sera appelée lors du déclenchement de cet événement :
private void button_Click(object sender, EventArgs e)
{
MessageBox.Show("button_Click");
}
Ensuite le code pour s'abonner à l'événement :
// Abonnement à l'événement "Click"
button.Click += new EventHandler(button_Click);
Enfin, ajouter le contrôle sur le formulaire, rien de plus simple :
// Ajout du contrôle sur le formulaire
this.Controls.Add(button);
Petite astuce :
Lorsque vous commencez à écrire : « button.Click += », l'Intelisense vous proposera automatiquement de créer la méthode (ici button_Click) et l'abonnement à cette méthode.
[Source : http://www.blog-microsoft.fr]