Procedura: Creare un'applicazione Windows Form dalla riga di comando

Le procedure seguenti descrivono i passaggi di base che è necessario completare per creare ed eseguire un'applicazione Windows Forms dalla riga di comando. Esiste un supporto completo per queste procedure in Visual Studio. Vedere anche Procedura dettagliata: Hosting di un controllo Windows Form in WPF.

Procedura

Per creare il form

  1. In un file di codice vuoto digitare le istruzioni o using seguentiImports:

    using System;
    using System.ComponentModel;
    using System.Drawing;
    using System.Windows.Forms;
    
    Imports System.ComponentModel
    Imports System.Drawing
    Imports System.Windows.Forms
    
  2. Dichiarare una classe denominata Form1 che eredita dalla classe Form:

    public class Form1 : Form
    
    Public Class Form1
        Inherits Form
    
  3. Creare un costruttore senza parametri per Form1.

    Si aggiungerà il resto del codice al costruttore in una procedura successiva.

    public Form1() {}
    
    Public Sub New()
    
    End Sub
    
  4. Aggiungere un metodo Main alla classe.

    1. STAThreadAttribute Applicare al metodo C# Main per specificare l'applicazione Windows Form è un apartment a thread singolo. L'attributo non è necessario in Visual Basic, poiché le applicazioni Windows Form sviluppate con Visual Basic usano un modello apartment a thread singolo per impostazione predefinita.

    2. Chiamare EnableVisualStyles per applicare gli stili del sistema operativo all'applicazione.

    3. Creare un'istanza del form ed eseguirla.

    [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
    

Per compilare l'applicazione ed eseguirla

  1. Al prompt dei comandi di .NET Framework passare alla directory creata per la classe Form1.

  2. Compilare il form.

    • Se si usa C#, digitare: csc form1.cs

      -or-

    • Se si usa Visual Basic, digitare: vbc form1.vb

  3. Al prompt dei comandi digitare: Form1.exe

Aggiunta di un controllo e gestione di un evento

I passaggi della precedente procedura hanno illustrato come creare un Windows Form di base che viene compilato ed eseguito. La procedura successiva mostrerà come creare e aggiungere un controllo al form e come gestire un evento per il controllo. Per altre informazioni sui controlli che è possibile aggiungere a Windows Form, vedere Windows Form Controls.

Oltre a saper creare applicazioni Windows Forms, è consigliabile conoscere la programmazione basata sugli eventi e come gestire l'input utente. Per altre informazioni, vedere Creazione di gestori eventi in Windows Form e gestione dell'input utente

Per dichiarare un pulsante e gestirne l'evento click

  1. Dichiarare un pulsante denominato button1.

  2. Nel costruttore creare il pulsante e impostarne le proprietà Size, Location e Text.

  3. Aggiungere il pulsante al form.

    Nell'esempio di codice seguente viene illustrato come dichiarare il controllo pulsante:

    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. Creare un metodo per gestire l'evento Click per il pulsante.

  5. Nel gestore dell'evento click visualizzare un oggetto MessageBox con il messaggio "Hello World".

    Nell'esempio di codice seguente viene illustrato come gestire l'evento click del controllo pulsante:

    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. Associare l'evento Click al metodo creato.

    Nell'esempio di codice seguente viene illustrato come associare l'evento al metodo.

    button1.Click += new EventHandler(button1_Click);
    
    Private Sub button1_Click(ByVal sender As Object, _
        ByVal e As EventArgs) Handles button1.Click
    
  7. Compilare ed eseguire l'applicazione come descritto nella precedente procedura.

Esempio

L'esempio di codice seguente è l'esempio completo delle procedure precedenti:

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

Vedi anche