Lire en anglais

Partager via


Utiliser Visual C# pour ajouter par programmation des contrôles aux Windows Forms au moment de l’exécution

Cet article vous aide à ajouter et configurer des contrôles sur un formulaire Windows par programmation à l’aide de Visual C#.

Version du produit d’origine : Visual C#
Numéro de la base de connaissances d’origine : 319266

Résumé

Cet article pas à pas vous montre comment ajouter et configurer par programme quelques contrôles couramment utilisés sur un formulaire Windows. La gestion des événements a été omise à partir de l’exemple de code.

Le Kit de développement logiciel (SDK) Microsoft .NET Framework fournit de nombreux contrôles visuels que vous pouvez utiliser pour créer une application Windows Forms. Vous pouvez ajouter et configurer des contrôles au moment du design dans Visual Studio .NET ou dans Visual Studio. Vous pouvez ajouter et configurer des contrôles par programmation au moment de l’exécution.

Spécifications

Cet article suppose que vous êtes familiarisé avec les rubriques suivantes :

  • Syntaxe Visual C#
  • Environnement Visual Studio .NET, environnement Visual Studio
  • Objectif des contrôles Visual C# courants

Créer une application Windows Forms

  1. Démarrez Visual Studio .NET ou Visual Studio, puis créez un projet d’application Windows Visual C# nommé WinControls. Form1 est ajouté au projet par défaut.

  2. Double-cliquez sur Form1 pour créer et afficher la Form1_Load procédure événementielle.

  3. Ajoutez des variables d’instance privée à la Form1 classe pour utiliser des contrôles Windows courants. La Form1 classe commence comme suit :

    C#
    public class Form1 : System.Windows.Forms.Form
    {
         //Controls.
         private TextBox txtBox = new TextBox();
         private Button btnAdd = new Button();
         private ListBox lstBox = new ListBox();
         private CheckBox chkBox = new CheckBox();
         private Label lblCount = new Label();
        //Other code.
    }
    

    Notes

    Le code doit être modifié dans Visual Studio. Lorsque vous créez un projet Windows Forms, Visual C# ajoute un formulaire au projet par défaut. Ce formulaire est nommé Form1. Les deux fichiers qui représentent le formulaire sont nommés Form1.cs et Form1.designer.cs. Vous écrivez votre code dans Form1.cs. Le fichier Designer.cs est l’emplacement où le Concepteur Windows Forms écrit le code qui implémente toutes les actions que vous avez effectuées en ajoutant des contrôles. Pour plus d’informations sur le Concepteur Windows Forms dans Visual C#, consultez Création d’un projet (Visual C#).

Personnaliser les propriétés de formulaire et de contrôle

  1. Recherchez la Form1_Load procédure événementielle et ajoutez le code suivant à la procédure pour personnaliser l’apparence du contrôle Formulaire :

    C#
     //Set up the form.
     this.MaximizeBox = false;
     this.MinimizeBox = false;
     this.BackColor = Color.White;
     this.ForeColor = Color.Black;
     this.Size = new System.Drawing.Size(155, 265);
     this.Text = "Run-time Controls";
     this.FormBorderStyle = FormBorderStyle.FixedDialog;
     this.StartPosition = FormStartPosition.CenterScreen;
    
  2. Ajoutez le code suivant à la Form1_Load procédure événementielle pour personnaliser l’apparence du contrôle Button :

    C#
     //Format controls. Note: Controls inherit color from parent form.
     this.btnAdd.BackColor = Color.Gray;
     this.btnAdd.Text = "Add";
     this.btnAdd.Location = new System.Drawing.Point(90, 25);
     this.btnAdd.Size = new System.Drawing.Size(50, 25);
    
  3. Ajoutez le code suivant pour personnaliser l’apparence du contrôle TextBox dans Form1_Load:

    C#
     this.txtBox.Text = "Text";
     this.txtBox.Location = new System.Drawing.Point(10, 25);
     this.txtBox.Size = new System.Drawing.Size(70, 20);
    
  4. Ajoutez le code suivant pour personnaliser l’apparence du contrôle ListBox dans Form1_Load:

    C#
     this.lstBox.Items.Add("One");
     this.lstBox.Items.Add("Two");
     this.lstBox.Items.Add("Three");
     this.lstBox.Items.Add("Four");
     this.lstBox.Sorted = true;
     this.lstBox.Location = new System.Drawing.Point(10, 55);
     this.lstBox.Size = new System.Drawing.Size(130, 95);
    
  5. Ajoutez le code suivant pour personnaliser l’apparence du contrôle CheckBox dans Form1_Load:

    C#
     this.chkBox.Text = "Disable";
     this.chkBox.Location = new System.Drawing.Point(15, 190);
     this.chkBox.Size = new System.Drawing.Size(110, 30);
    
  6. Ajoutez le code suivant pour personnaliser l’apparence du contrôle Label dans Form1_Load:

    C#
     this.lblCount.Text = lstBox.Items.Count.ToString() + " items";
     this.lblCount.Location = new System.Drawing.Point(55, 160);
     this.lblCount.Size = new System.Drawing.Size(65, 15);
    

Ajouter des contrôles au formulaire

  1. Ajoutez le code suivant pour ajouter chaque objet au Controls tableau du formulaire à la fin de Form1_Load:

    C#
     //Add controls to the form.
     this.Controls.Add(btnAdd);
     this.Controls.Add(txtBox);
     this.Controls.Add(lstBox);
     this.Controls.Add(chkBox);
     this.Controls.Add(lblCount);
    
  2. Enregistrez le projet.

Vérifiez qu’elle fonctionne

Pour vérifier que l’exemple fonctionne, sélectionnez Démarrer dans le menu Débogage.

Notes

  • Bien que le formulaire et les contrôles apparaissent, ils ne font actuellement rien, car vous n’avez pas écrit de gestionnaires d’événements.
  • N’oubliez pas que les positions de ces contrôles sont statiques. Pour les rendre plus robustes lorsque le formulaire est étiré, faites les points dynamiques par rapport à la position du formulaire. Si les contrôles sont statiques, l’étirement du formulaire peut interférer avec l’affichage d’autres contrôles sur le formulaire.

References

Pour plus d’informations sur l’utilisation de contrôles par programmation, consultez la rubrique Applications Windows dans la section Visual C# de la documentation de l’aide de Visual Studio .NET Online ou de la documentation de l’aide de Visual Studio Online.