Freigeben über


Verwenden von Visual C# zum programmgesteuerten Hinzufügen von Steuerelementen zu Windows-Formularen zur Laufzeit

Dieser Artikel hilft Ihnen beim programmgesteuerten Hinzufügen und Konfigurieren von Steuerelementen in einem Windows-Formular mithilfe von Visual C#.

Originalproduktversion: Visual C#
Ursprüngliche KB-Nummer: 319266

Zusammenfassung

In diesem Schritt-für-Schritt-Artikel wird gezeigt, wie Sie ein paar häufig verwendete Steuerelemente in einem Windows-Formular programmgesteuert hinzufügen und konfigurieren. Die Ereignisbehandlung wurde aus dem Beispielcode weggelassen.

Das Microsoft .NET Framework Software Development Kit (SDK) bietet viele visuelle Steuerelemente, mit denen Sie eine Windows Forms-Anwendung erstellen können. Sie können Steuerelemente zur Entwurfszeit in Visual Studio .NET oder in Visual Studio hinzufügen und konfigurieren. Sie können Steuerelemente programmgesteuert zur Laufzeit hinzufügen und konfigurieren.

Anforderungen

In diesem Artikel wird davon ausgegangen, dass Sie mit den folgenden Themen vertraut sind:

  • Visual C#-Syntax
  • Die Visual Studio .NET-Umgebung, die Visual Studio-Umgebung
  • Zweck allgemeiner Visual C#-Steuerelemente

Erstellen einer Windows Forms-Anwendung

  1. Starten Sie Visual Studio .NET oder Visual Studio, und erstellen Sie ein neues Visual C#-Windows-Anwendungsprojekt mit dem Namen WinControls. Form1 wird dem Projekt standardmäßig hinzugefügt.

  2. Doppelklicken Sie auf "Formular1", um die Form1_Load Ereignisprozedur zu erstellen und anzuzeigen.

  3. Fügen Sie der Form1 Klasse private Instanzvariablen hinzu, um mit allgemeinen Windows-Steuerelementen zu arbeiten. Die Form1 Klasse beginnt wie folgt:

    public class Form1 : System.Windows.Forms.Form
    {
         //Controls.
         private TextBox txtBox = new TextBox();
         private Button btnAdd = new Button();
         private ListBox lstBox = new ListBox();
         private CheckBox chkBox = new CheckBox();
         private Label lblCount = new Label();
        //Other code.
    }
    

    Notiz

    Der Code sollte in Visual Studio geändert werden. Wenn Sie ein Windows Forms-Projekt erstellen, fügt Visual C# dem Projekt standardmäßig ein Formular hinzu. Dieses Formular heißt "Form1". Die beiden Dateien, die das Formular darstellen, werden Form1.cs und Form1.designer.cs benannt. Sie schreiben Ihren Code in Form1.cs. Die Designer.cs Datei ist der Ort, an dem der Windows Forms-Designer den Code schreibt, der alle Aktionen implementiert, die Sie durch Hinzufügen von Steuerelementen ausgeführt haben. Weitere Informationen zum Windows Forms-Designer in Visual C# finden Sie unter Erstellen eines Projekts (Visual C#).

Anpassen von Formular- und Steuerelementeigenschaften

  1. Suchen Sie die Form1_Load Ereignisprozedur, und fügen Sie der Prozedur den folgenden Code hinzu, um die Darstellung des Formularsteuerelements anzupassen:

     //Set up the form.
     this.MaximizeBox = false;
     this.MinimizeBox = false;
     this.BackColor = Color.White;
     this.ForeColor = Color.Black;
     this.Size = new System.Drawing.Size(155, 265);
     this.Text = "Run-time Controls";
     this.FormBorderStyle = FormBorderStyle.FixedDialog;
     this.StartPosition = FormStartPosition.CenterScreen;
    
  2. Fügen Sie der Form1_Load Ereignisprozedur den folgenden Code hinzu, um die Darstellung des Schaltflächen-Steuerelements anzupassen:

     //Format controls. Note: Controls inherit color from parent form.
     this.btnAdd.BackColor = Color.Gray;
     this.btnAdd.Text = "Add";
     this.btnAdd.Location = new System.Drawing.Point(90, 25);
     this.btnAdd.Size = new System.Drawing.Size(50, 25);
    
  3. Fügen Sie den folgenden Code hinzu, um die Darstellung des TextBox-Steuerelements anzupassen:Form1_Load

     this.txtBox.Text = "Text";
     this.txtBox.Location = new System.Drawing.Point(10, 25);
     this.txtBox.Size = new System.Drawing.Size(70, 20);
    
  4. Fügen Sie den folgenden Code hinzu, um die Darstellung des ListBox-Steuerelements anzupassen:Form1_Load

     this.lstBox.Items.Add("One");
     this.lstBox.Items.Add("Two");
     this.lstBox.Items.Add("Three");
     this.lstBox.Items.Add("Four");
     this.lstBox.Sorted = true;
     this.lstBox.Location = new System.Drawing.Point(10, 55);
     this.lstBox.Size = new System.Drawing.Size(130, 95);
    
  5. Fügen Sie den folgenden Code hinzu, um die Darstellung des CheckBox-Steuerelements anzupassen:Form1_Load

     this.chkBox.Text = "Disable";
     this.chkBox.Location = new System.Drawing.Point(15, 190);
     this.chkBox.Size = new System.Drawing.Size(110, 30);
    
  6. Fügen Sie den folgenden Code hinzu, um die Darstellung des Bezeichnungssteuerelements anzupassen:Form1_Load

     this.lblCount.Text = lstBox.Items.Count.ToString() + " items";
     this.lblCount.Location = new System.Drawing.Point(55, 160);
     this.lblCount.Size = new System.Drawing.Size(65, 15);
    

Hinzufügen von Steuerelementen zu dem Formular

  1. Fügen Sie den folgenden Code hinzu, um jedes Objekt dem Controls Array des Formulars am Ende von Form1_Load:

     //Add controls to the form.
     this.Controls.Add(btnAdd);
     this.Controls.Add(txtBox);
     this.Controls.Add(lstBox);
     this.Controls.Add(chkBox);
     this.Controls.Add(lblCount);
    
  2. Speichern Sie das Projekt.

Überprüfen, ob sie funktioniert

Um zu überprüfen, ob das Beispiel funktioniert, wählen Sie im Menü "Debuggen" die Option "Start" aus.

Notiz

  • Obwohl das Formular und die Steuerelemente angezeigt werden, tun sie derzeit nichts, da Sie keine Ereignishandler geschrieben haben.
  • Denken Sie daran, dass die Positionen dieser Steuerelemente statisch sind. Um sie robuster zu gestalten, wenn das Formular gestreckt wird, stellen Sie die Punkte relativ zur Formularposition dynamisch dar. Wenn die Steuerelemente statisch sind, kann das Strecken des Formulars die Anzeige anderer Steuerelemente im Formular beeinträchtigen.

References

Weitere Informationen zur programmgesteuerten Verwendung von Steuerelementen finden Sie im Thema "Windows-Anwendungen " im Abschnitt "Visual C#" der Visual Studio .NET Online-Hilfedokumentation oder in der Visual Studio Online-Hilfedokumentation.