Guide pratique pour créer une application Windows Forms à partir de la ligne de commande

Les procédures suivantes décrivent les étapes de base que vous devez effectuer pour créer et exécuter une application Windows Forms à partir de la ligne de commande. Ces procédures sont très bien prises en charge dans Visual Studio. Consultez également la procédure pas à pas : hébergement d’un contrôle Windows Forms dans WPF.

Procédure

Pour créer le formulaire

  1. Dans un fichier de code vide, tapez les instructions suivantes Imports using :

    using System;
    using System.ComponentModel;
    using System.Drawing;
    using System.Windows.Forms;
    
    Imports System.ComponentModel
    Imports System.Drawing
    Imports System.Windows.Forms
    
  2. Déclarez une classe nommée Form1 qui hérite de la classe Form :

    public class Form1 : Form
    
    Public Class Form1
        Inherits Form
    
  3. Créez un constructeur sans paramètre pour Form1.

    Vous ajouterez du code au constructeur lors d'une procédure ultérieure.

    public Form1() {}
    
    Public Sub New()
    
    End Sub
    
  4. Ajoutez une méthode Main à la classe.

    1. Appliquez la STAThreadAttribute méthode C# Main pour spécifier votre application Windows Forms est un appartement monothread. (L’attribut n’est pas nécessaire en Visual Basic, car les applications Windows Forms développées avec Visual Basic utilisent un modèle d’appartement à thread unique par défaut.)

    2. Appelez EnableVisualStyles pour appliquer des styles de système d’exploitation à votre application.

    3. Créez une instance du formulaire et exécutez-la.

    [STAThread]
    public static void Main()
    {
      Application.EnableVisualStyles();
      Application.Run(new Form1());
    }
    
    
        Public Shared Sub Main()
            Application.EnableVisualStyles()
            Application.Run(New Form1())
    
        End Sub
    End Class
    

Pour compiler et exécuter l'application

  1. À l'invite de commandes .NET Framework, accédez au répertoire où vous avez créé la classe Form1.

  2. Compilez le formulaire.

    • Si vous utilisez C#, tapez : csc form1.cs

      -or-

    • Si vous utilisez Visual Basic, tapez : vbc form1.vb

  3. À l’invite de commandes, tapez : Form1.exe

Ajout d’un contrôle et gestion d’un événement

Les étapes de la procédure précédente illustrent simplement comment créer un Windows Form de base qui se compile et s'exécute. La procédure suivante illustre comment créer et ajouter un contrôle au formulaire et comment gérer un événement pour le contrôle. Pour plus d’informations sur les contrôles que vous pouvez ajouter à Windows Forms, consultez Contrôles Windows Forms.

Outre la création d’applications Windows Forms, vous devez comprendre la programmation basée sur les événements et comment gérer l’entrée d’utilisateur. Pour plus d’informations, consultez Création de gestionnaires d’événements dans Windows Forms et gestion des entrées utilisateur

Pour déclarer un contrôle bouton et gérer son événement click

  1. Déclarez un contrôle bouton nommé button1.

  2. Dans le constructeur, créez le bouton et définissez ses propriétés Size, Location et Text.

  3. Ajoutez le bouton au formulaire.

    L’exemple de code suivant montre comment déclarer le contrôle bouton :

    public Button button1;
    public Form1()
    {
        button1 = new Button();
        button1.Size = new Size(40, 40);
        button1.Location = new Point(30, 30);
        button1.Text = "Click me";
        this.Controls.Add(button1);
        button1.Click += new EventHandler(button1_Click);
    }
    
    Public WithEvents button1 As Button
    
    Public Sub New()
        button1 = New Button()
        button1.Size = New Size(40, 40)
        button1.Location = New Point(30, 30)
        button1.Text = "Click me"
        Me.Controls.Add(button1)
       
    End Sub
    
  4. Créez une méthode pour gérer l'événement Click pour le bouton.

  5. Dans le gestionnaire d'événements click, affichez un MessageBox avec le message « Hello World ».

    L’exemple de code suivant montre comment gérer l’événement click du contrôle de bouton :

    private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show("Hello World");
    }
    
    Private Sub button1_Click(ByVal sender As Object, _
        ByVal e As EventArgs) Handles button1.Click
        MessageBox.Show("Hello World")
    End Sub
    
  6. Associez l'événement Click à la méthode que vous avez créée.

    L'exemple de code suivant montre comment associer l'événement à la méthode.

    button1.Click += new EventHandler(button1_Click);
    
    Private Sub button1_Click(ByVal sender As Object, _
        ByVal e As EventArgs) Handles button1.Click
    
  7. Compilez et exécutez l'application comme décrit dans la procédure précédente.

Exemple

L’exemple de code suivant est l’exemple complet des procédures précédentes :

using System;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;

namespace FormWithButton
{
    public class Form1 : Form
    {
        public Button button1;
        public Form1()
        {
            button1 = new Button();
            button1.Size = new Size(40, 40);
            button1.Location = new Point(30, 30);
            button1.Text = "Click me";
            this.Controls.Add(button1);
            button1.Click += new EventHandler(button1_Click);
        }
        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Hello World");
        }
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.Run(new Form1());
        }
    }
}
Imports System.ComponentModel
Imports System.Drawing
Imports System.Windows.Forms

Public Class Form1
    Inherits Form
    Public WithEvents button1 As Button

    Public Sub New()
        button1 = New Button()
        button1.Size = New Size(40, 40)
        button1.Location = New Point(30, 30)
        button1.Text = "Click me"
        Me.Controls.Add(button1)
       
    End Sub
   
    Private Sub button1_Click(ByVal sender As Object, _
        ByVal e As EventArgs) Handles button1.Click
        MessageBox.Show("Hello World")
    End Sub

    <STAThread()> _
    Shared Sub Main()
        Application.EnableVisualStyles()
        Application.Run(New Form1())

    End Sub
End Class

Voir aussi