Cómo: Crear una aplicación Windows Forms desde la línea de comandos

Los procedimientos siguientes describen los pasos básicos que debe seguir para crear y ejecutar una aplicación de Windows Forms desde la línea de comandos. Visual Studio es altamente compatible con estos procedimientos. Vea también Tutorial: Hospedar un control Windows Forms en WPF.

Procedimiento

Para crear el formulario

  1. En un archivo de código vacío, escriba las siguientes Imports using instrucciones o :

    using System;
    using System.ComponentModel;
    using System.Drawing;
    using System.Windows.Forms;
    
    Imports System.ComponentModel
    Imports System.Drawing
    Imports System.Windows.Forms
    
  2. Declare una clase denominada Form1 que herede de la clase Form:

    public class Form1 : Form
    
    Public Class Form1
        Inherits Form
    
  3. Cree un constructor sin parámetros para Form1 .

    Agregará más código al constructor en un procedimiento posterior.

    public Form1() {}
    
    Public Sub New()
    
    End Sub
    
  4. Agregue un método Main a la clase.

    1. Aplique al STAThreadAttribute método de C# para especificar que la aplicación Windows Forms es un apartamento de un solo Main subproceso. (El atributo no es necesario en Visual Basic, ya Windows aplicaciones de formularios desarrolladas con Visual Basic usan un modelo de apartamento de un solo subproceso de forma predeterminada).

    2. Llame EnableVisualStyles a para aplicar estilos de sistema operativo a la aplicación.

    3. Cree una instancia del formulario y ejecútela.

    [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
    

Para compilar y ejecutar la aplicación

  1. En el símbolo del sistema de .NET Framework, vaya al directorio donde creó la clase Form1.

  2. Compile el formulario.

    • Si usa C#, escriba: csc form1.cs

      -or-

    • Si usa Visual Basic, escriba:vbc form1.vb

  3. En el símbolo del sistema, escriba: Form1.exe

Agregar un control y controlar un evento

Los pasos del procedimiento anterior muestran cómo crear un Windows Form básico que se compila y se ejecuta. El procedimiento siguiente mostrará cómo crear y agregar un control al formulario y cómo controlar un evento del control. Para obtener más información sobre los controles que puede agregar a Windows Forms, vea Windows Forms Controls.

Además de comprender cómo se crean las aplicaciones de Windows Forms, debe conocer la programación basada en eventos y cómo controlar la entrada de datos del usuario. Para obtener más información, vea Crear controladores de eventos en Windows Forms yControlar la entrada del usuario

Para declarar un control de botón y controlar su evento de clic

  1. Declare un control de botón llamado button1.

  2. En el constructor, cree el botón y establezca sus propiedades Size, Location y Text.

  3. Agregue el botón al formulario.

    En el ejemplo de código siguiente se muestra cómo declarar el control de botón:

    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. Cree un método para controlar los eventos Click del botón.

  5. En el controlador de eventos de clic, muestre un MessageBox con el mensaje "Hello World".

    En el ejemplo de código siguiente se muestra cómo controlar el evento click del control de botón:

    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. Asocie el evento Click con el método que se ha creado.

    En el ejemplo de código siguiente se muestra cómo asociar el evento con el 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 y ejecute la aplicación tal y como se describe en el procedimiento anterior.

Ejemplo

El ejemplo de código siguiente es el ejemplo completo de los procedimientos 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

Vea también