Share via


Exemplarische Vorgehensweise: Erstellen eines Windows Forms-Benutzersteuerelements, das einfache Datenbindung unterstützt

 

Veröffentlicht: Juli 2016

Zum Anzeigen von Daten in Formularen in Windows-Anwendungen können Sie die in der Toolbox vorhandenen Steuerelemente verwenden oder – falls die gewünschte Funktionalität in den Standardsteuerelementen nicht verfügbar ist – benutzerdefinierte Steuerelemente erstellen. Diese exemplarische Vorgehensweise erläutert, wie Sie ein Steuerelement erstellen, das DefaultBindingPropertyAttribute implementiert. Steuerelemente, die DefaultBindingPropertyAttribute implementieren, können eine Eigenschaft enthalten, die an Daten gebunden werden kann. Solche Steuerelemente sind vergleichbar mit TextBox oder CheckBox.

Weitere Informationen zum Erstellen von Steuerelementen finden Sie unter Entwickeln von Windows Forms-Steuerelementen zur Entwurfszeit.

Beim Erstellen von Steuerelementen, die in Datenbindungsszenarios verwendet werden sollen, müssen Sie eines der folgenden Datenbindungsattribute implementieren:

Verwendung von Datenbindungsattributen
Implementieren Sie DefaultBindingPropertyAttribute für einfache Steuerelemente, die eine einzige Spalte (oder Eigenschaft) von Daten anzeigen, wie das TextBox-Steuerelement. (Dieser Prozess wird in dieser exemplarischen Vorgehensweise beschrieben.)
Implementieren Sie ComplexBindingPropertiesAttribute für Steuerelemente, die Listen (oder Tabellen) von Daten anzeigen, wie das DataGridView-Steuerelement. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Erstellen eines Windows Forms-Benutzersteuerelements, das komplexe Datenbindung unterstützt.
Implementieren Sie die LookupBindingPropertiesAttribute auf Steuerelementen wie einem ComboBox,das Listen (oder Tabellen) von Daten anzeigt, aber auch in einer einzelnen Spalte oder Eigenschaft vorhanden sein muss. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Erstellen eines Windows Forms-Benutzersteuerelements, das eine Datenbindung beim Suchen unterstützt.

In dieser exemplarischen Vorgehensweise wird ein einfaches Steuerelement erstellt, das Daten aus einer einzelnen Spalte in einer Tabelle anzeigt. In diesem Beispiel wird die Spalte Phone der Tabelle Customers aus der Beispieldatenbank Northwind verwendet. Das einfache Benutzersteuerelement zeigt die Telefonnummern des Kunden in einem standardmäßigen Telefonnummernformat mithilfe einer MaskedTextBox und dem Festlegen der Maske auf eine Telefonnummer.

Bei dieser exemplarischen Vorgehensweise lernen Sie Folgendes:

  • Erstellen Sie eine neue Windows-Anwendung.

  • Hinzufügen eines neuen Benutzersteuerelements zu einem Projekt.

  • Entwerfen des Benutzersteuerelements im visuellen Designer.

  • Implementieren des DefaultBindingProperty-Attributs.

  • Erstellen eines Datasets mit dem Assistent zum Konfigurieren von Datenquellen.

  • Legen Sie für die Spalte Telefon im Fenster Datenquellen fest, dass das neue Steuerelement verwendet wird.

  • Erstellen eines Formulars, um Daten in dem neuen Steuerelement anzuzeigen.

Vorbereitungsmaßnahmen

Für die Durchführung dieser exemplarischen Vorgehensweise benötigen Sie Folgendes:

Erstellen einer Windows-Anwendung

Im ersten Schritt wird eine Windows-Anwendung erstellt.

So erstellen Sie ein neues Windows-Projekt

  1. Erstellen Sie in Visual Studio im Menü Datei ein neues Projekt.

  2. Geben Sie dem Projekt den Namen SimpleControlWalkthrough.

  3. Wählen Sie Windows-Anwendung aus, und klicken Sie auf OK. Weitere Informationen finden Sie unter Clientanwendungen.

    Das Projekt SimpleControlWalkthrough wird erstellt und zum Projektmappen-Explorer hinzugefügt.

Hinzufügen eines Benutzersteuerelements zum Projekt

Diese exemplarische Vorgehensweise erstellt ein einfaches, datenbindbares Steuerelement aus einem Benutzersteuerelement. Fügen Sie deshalb ein Benutzersteuerelement dem Projekt SimpleControlWalkthrough hinzu.

So fügen Sie dem Projekt ein Benutzersteuerelement hinzu

  1. Wählen Sie im Menü Projekt den Punkt Benutzersteuerelement hinzufügen.

  2. Geben Sie PhoneNumberBox in den Bereich Name ein und klicken Sie auf Hinzufügen.

    Das PhoneNumberBox-Steuerelement wird dem Projektmappen-Explorer hinzugefügt und im Designer geöffnet.

Entwerfen des PhoneNumberBox-Steuerelements

Diese exemplarische Vorgehensweise erweitert das vorhandene MaskedTextBox, sodass das PhoneNumberBox-Steuerelement erstellt wird.

Entwerfen des PhoneNumberBox-Steuerelements

  1. Ziehen Sie ein MaskedTextBox aus der Toolbox auf die Entwurfsoberfläche des Benutzersteuerelements.

  2. Wählen Sie den Smart Tag auf dem MaskedTextBox, das Sie gerade herein gezogen haben und wählen Sie Maske festlegen.

  3. Wählen Sie Telefonnummer im Dialogfeld Eingabeformat und klicken Sie OK, um die Maske festzulegen.

Hinzufügen des erforderlichen Datenbindungsattributs

Implementieren Sie für einfache Steuerelemente, die Datenbindung unterstützen, das DefaultBindingPropertyAttribute.

So implementieren Sie das Attribut DefaultBindingProperty

  1. Wechseln Sie für das PhoneNumberBox-Steuerelement zur Codeansicht. (Wählen Sie im Menü Ansicht den Befehl Code aus.)

  2. Ersetzen Sie den Code in PhoneNumberBox durch folgenden Code:

    using System.Windows.Forms;
    
    namespace CS
    {
        [System.ComponentModel.DefaultBindingProperty("PhoneNumber")]
        public partial class PhoneNumberBox : UserControl
        {
            public string PhoneNumber
            {
                get{ return maskedTextBox1.Text; }
                set{ maskedTextBox1.Text = value; }
            }
    
            public PhoneNumberBox()
            {
                InitializeComponent();
            }
        }
    }
    
    <System.ComponentModel.DefaultBindingProperty("PhoneNumber")>
    Public Class PhoneNumberBox
    
        Public Property PhoneNumber() As String
            Get
                Return MaskedTextBox1.Text
            End Get
            Set(ByVal value As String)
                MaskedTextBox1.Text = value
            End Set
        End Property
    End Class
    
  3. Wählen Sie im Menü Erstellen die Option Projektmappe erstellen aus.

Erstellen einer Datenquelle aus einer Datenbank

Dieser Schritt verwendet den Assistenten zum Konfigurieren von Datenquellen auf Grundlage der Customers-Tabelle in der Beispieldatenbank Northwind. Sie benötigen Zugriff auf die Beispieldatenbank Northwind, um die Verbindung herstellen zu können. Informationen zum Einrichten der Beispieldatenbank Northwind finden Sie unter Gewusst wie: Installieren von Beispieldatenbanken.

So erstellen Sie die Datenquelle

  1. Klicken Sie im Menü Daten auf Datenquellen anzeigen.

  2. Wählen Sie im Datenquellenfenster die Option Neue Datenquelle hinzufügen aus, um den Assistenten zum Konfigurieren von Datenquellen zu starten.

  3. Wählen Sie auf der Seite Datenquellentyp auswählen die Option Datenbank aus, und klicken Sie auf Weiter.

  4. Führen Sie auf der Seite Wählen Sie Ihre Datenverbindung einen der folgenden Schritte aus:

    • Wenn in der Dropdownliste eine Datenverbindung zur Beispieldatenbank "Northwind" verfügbar ist, wählen Sie diese aus.

      Oder

    • Wählen Sie Neue Verbindung, um das Dialogfeld Verbindung hinzufügen/ändern zu öffnen.

  5. Falls die Datenbank ein Kennwort erfordern sollte, aktivieren Sie die Option für die Einbeziehung vertraulicher Daten, und klicken Sie dann auf Weiter.

  6. Klicken Sie auf der Seite Verbindungszeichenfolge in der Programmkonfigurationsdatei speichern auf Weiter.

  7. Erweitern Sie auf der Seite Datenbankobjekte auswählen den Knoten Tabellen.

  8. Wählen Sie die Customers-Tabelle und klicken Sie anschließend auf Fertig stellen.

    NorthwindDataSet wird dem Projekt hinzugefügt. Die Tabelle Customers wird im Datenquellenfenster angezeigt.

Festlegen, dass die Spalte "Telefon" das Steuerelement PhoneNumberBox verwendet

Im Datenquellenfenster können Sie vor dem Ziehen von Elementen auf das Formular festlegen, welches Steuerelement erstellt werden soll.

So legen Sie die Bindung der Spalte "Telefon" an das PhoneNumberBox-Steuerelement fest

  1. Öffnen Sie Form1 im Designer.

  2. Erweitern Sie im Datenquellenfenster den Knoten Customers.

  3. Klicken Sie auf den Dropdownpfeil auf dem Knoten Customers und wählen Sie Details aus der Steuerungsliste.

  4. Klicken Sie den Dropdownpfeil auf der Spalte Kunden und wählen Sie Anpassen.

  5. Wählen Sie im Optionen für die Anpassung der Datenbenutzeroberfläche in der Liste Zugeordnete Steuerelemente den Eintrag PhoneNumberBox aus.

  6. Klicken Sie den Dropdownpfeil auf der Spalte Kunden und wählen Sie PhoneNumberBox.

Hinzufügen von Steuerelementen zum Formular

Sie können die datengebundenen Steuerelemente erstellen, indem Sie Elemente aus dem Datenquellenfenster auf das Formular ziehen.

So erstellen Sie datengebundene Steuerelemente auf dem Formular

  • Ziehen Sie den Hauptknoten Customers aus dem Datenquellenfenster auf das Formular und achten Sie darauf, dass das Steuerelement PhoneNumberBox zur Anzeige der Spalte Phone verwendet wird.

    Auf dem Formular werden datengebundene Steuerelemente mit beschreibenden Bezeichnungen sowie ein Toolstrip (BindingNavigator) für die Navigation in den Datensätzen angezeigt. NorthwindDataSet, CustomersTableAdapter, BindingSource und BindingNavigator werden auf der Komponentenleiste angezeigt.

Ausführen der Anwendung

So führen Sie die Anwendung aus

  • Drücken Sie F5, um die Anwendung auszuführen.

Nächste Schritte

Entsprechend den Anforderungen an Ihre Anwendung können Sie nach der Erstellung eines Steuerelements, das Datenbindung unterstützt, noch weitere Schritte ausführen. Zu den typischen nächsten Schritten gehören Folgende:

Siehe auch

Festlegen des Steuerelements, das beim Ziehen aus dem Datenquellenfenster erstellt werden soll
Binden von Windows Forms-Steuerelementen an Daten in Visual Studio
Übersicht über Datenanwendungen in Visual Studio
Herstellen von Datenverbindungen in Visual Studio
Vorbereiten der Anwendung auf den Empfang von Daten
Abrufen von Daten für die Anwendung
Binden von Steuerelementen an Daten in Visual Studio
Bearbeiten von Daten in der Anwendung
Überprüfen von Daten
Speichern von Daten