Como: Criar um aplicativo do Windows Forms a partir da linha de comando

Os procedimentos a seguir descrevem as etapas básicas que devem ser concluídas para criar e executar um aplicativo do Windows Forms na linha de comando. Há um suporte abrangente para esses procedimentos no Visual Studio. Consulte também Demonstra Passo a passo: Hospedando um controle do Windows Forms no WPF.

Procedimento

Criar o formulário

  1. Em um arquivo de código vazio, digite o seguinte Imports ou using instruções:

    using System;
    using System.ComponentModel;
    using System.Drawing;
    using System.Windows.Forms;
    
    Imports System.ComponentModel
    Imports System.Drawing
    Imports System.Windows.Forms
    
  2. Declare uma classe chamada Form1 que herda da classe Form:

    public class Form1 : Form
    
    Public Class Form1
        Inherits Form
    
  3. Crie um construtor sem parâmetros para Form1.

    Mais código será adicionado ao construtor em um procedimento subsequente.

    public Form1() {}
    
    Public Sub New()
    
    End Sub
    
  4. Adicione o método Main à classe.

    1. Aplique o STAThreadAttribute ao método C# Main para especificar que seu aplicativo Windows Forms é um apartamento de thread único. (O atributo não é necessário no Visual Basic, já que os aplicativos de formulários do Windows desenvolvidos com o Visual Basic usam um modelo de apartamento de thread único por padrão.)

    2. Chamada EnableVisualStyles para aplicar estilos do sistema operacional ao seu aplicativo.

    3. Crie uma instância do formulário e execute-o.

    [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
    

Compilar e executar o aplicativo

  1. No prompt de comando do .NET Framework, navegue até o diretório em que a classe Form1 foi criada.

  2. Compile o formulário.

    • Se você estiver usando o C#, digite: csc form1.cs

      -or-

    • Se estiver usando Visual Basic, digite: vbc form1.vb

  3. No prompt de comando, digite: Form1.exe

Adicionando um controle e manipulando um evento

As etapas do procedimento anterior demonstraram como criar um formulário básico do Windows Forms que compila e executa. O procedimento a seguir mostra como criar e adicionar um controle ao formulário e manipular um evento para o controle. Para obter mais informações sobre os controles que podem ser adicionados a formulários do Windows Forms, consulte Controles do Windows Forms.

Além de entender como criar aplicativos do Windows Forms, é necessário compreender a programação baseada em eventos e como tratar a entrada do usuário. Para obter mais informações, consulte Criando Manipuladores de Eventos no Windows Forms e Tratando a Entrada do Usuário

Declarar um controle de botão e manipular o evento de clique

  1. Declare um controle de botão chamado button1.

  2. No construtor, crie o botão e defina suas Sizepropriedades e LocationText .

  3. Adicione o botão ao formulário.

    O exemplo de código a seguir demonstra como declarar o controle de botão:

    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. Crie um método para manipular o evento para o Click botão.

  5. No manipulador de eventos click, exiba um MessageBox com a mensagem "Hello World".

    O exemplo de código a seguir demonstra como manipular o evento click do controle de botão:

    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. Associe o Click evento ao método que você criou.

    O exemplo de código a seguir demonstra como associar o evento ao método.

    button1.Click += new EventHandler(button1_Click);
    
    Private Sub button1_Click(ByVal sender As Object, _
        ByVal e As EventArgs) Handles button1.Click
    
  7. Compile e execute o aplicativo, conforme descrito no procedimento anterior.

Exemplo

O exemplo de código a seguir é o exemplo completo dos procedimentos anteriores:

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

Confira também