Condividi tramite


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 Form dalla riga di comando. In Visual Studio è disponibile un ampio supporto per queste procedure. Consultare anche "Procedura dettagliata: Hosting di un controllo Windows Forms in WPF" .

Procedimento

Per creare il modulo

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

    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.

    Aggiungerai altro codice al costruttore in una procedura successiva.

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

    1. Applicare STAThreadAttribute al metodo C# Main per specificare che l'applicazione Windows Forms utilizza un apartment a thread singolo. L'attributo non è necessario in Visual Basic, poiché le applicazioni Windows Forms 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 ed eseguire un'istanza del modulo.

    [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 ed eseguire l'applicazione

  1. Al prompt dei comandi di .NET Framework, passare alla directory in cui è stata creata la classe Form1.

  2. Compilare il modulo.

    • Se si utilizza il linguaggio 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 procedura precedente illustrano come creare semplicemente un Windows Form di base che compila ed esegue. La procedura successiva illustra come creare e aggiungere un controllo al form e gestire un evento per il controllo. Per ulteriori informazioni sui controlli che è possibile aggiungere a Windows Forms, consultare Controlli Windows Forms.

Oltre a comprendere come creare applicazioni Windows Form, è necessario comprendere la programmazione basata su eventi e come gestire l'input dell'utente. Per altre informazioni, vedere Creazione di gestori eventi in Windows Forme Gestione dell'Input dell'Utente

Per dichiarare un controllo del pulsante e gestire l'evento di clic

  1. Dichiarare un controllo pulsante denominato button1.

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

  3. Aggiungere il pulsante al modulo.

    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 bottone.

  5. Nel gestore eventi click visualizzare un 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. Associa l'evento Click al metodo che hai 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 procedura precedente.

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

Vedere anche