Beispiel für die ComboBox-Datenbindung

Aktualisiert: November 2007

In diesem Beispiel wird veranschaulicht, wie Daten an das ComboBox-Steuerelement und an das DataGridView-Steuerelement gebunden werden.

So erhalten Sie Beispiele und Anweisungen zu ihrer Installation

  • Führen Sie eine oder mehrere der folgenden Aktionen aus:

    • Klicken Sie im Menü Hilfe auf Samplings.

      In der Infodatei befinden sich Informationen zu Beispielen.

    • Gehen Sie zur Website mit Visual Studio 2008-Beispielen. Hier stehen die aktuellsten Versionen der Beispiele bereit.

    • Suchen Sie Beispiele auf dem Computer, auf dem Visual Studio installiert wurde. Standardmäßig werden Beispiele und eine Infodatei unter Laufwerk:\Programme\Microsoft Visual Studio 9.0\Beispiele\lcid installiert. Für die Express-Version von Visual Studio werden alle Beispiele online bereitgestellt.

Weitere Informationen finden Sie unter Suchen von Beispieldateien.

Sicherheitshinweis:

Dieser Beispielcode soll lediglich ein Konzept veranschaulichen. Es wird nur der für das jeweilige Konzept relevante Code dargestellt. Möglicherweise erfüllt dieser nicht die Sicherheitsanforderungen für eine bestimmte Umgebung, und er sollte nicht genau wie dargestellt verwendet werden. Wir empfehlen, Sicherheits- und Fehlerbehandlungscode hinzuzufügen, um Ihre Projekte sicherer und stabiler zu machen. Microsoft stellt diesen Beispielcode "wie besehen" und ohne Garantien zur Verfügung.

So führen Sie dieses Beispiel aus

  • Drücken Sie F5.

Anforderungen

Für dieses Beispiel wird die Beispieldatenbank Northwind benötigt. Weitere Informationen finden Sie unter Gewusst wie: Installieren und Problembehandlung von Datenbankkomponenten für Beispiele.

Veranschaulicht

Mit dem Code wird veranschaulicht, wie sechs unterschiedliche Arten von Datenquellen an ein ComboBox-Steuerelement gebunden werden. Daten aus folgenden Quellen werden gebunden:

Beim Laden des Hauptformulars wird mithilfe einer einfachen SQL Select-Anweisung die Tabelle Products der Datenbank Northwind in ein DataSet abgerufen. Gleichzeitig wird ein DataView erstellt, das eine sortierte Ansicht der Spalte ProductName enthält. Die Tabelle Products wird mit einem TableAdapter und BindingSource in ein weiteres DataSet geladen.

Der Benutzer kann das Kombinationsfeld anschließend füllen, indem er es an eines der folgenden Elemente bindet: ein weiteres Array von Farben, eine Arrayliste mit Formen, eine erweiterte Arrayliste mit Vertriebsabteilungen (mit einer Struktur definiert), die Produkttabelle, die sich in einem der beiden Datasets befindet, oder die sortierte Datenansicht. Wenn der Benutzer das Kombinationsfeld an das Dataset, die Datenansicht oder die erweiterte Arrayliste mit Vertriebsabteilungen bindet, wird bei Auswahl eines Eintrags im Kombinationsfeld zusätzlich ein dem Eintrag zugeordneter Wert angezeigt. Wenn der Benutzer das Kombinationsfeld an den Datenconnector bindet, sind das Kombinationsfeld und die DataGrid-Ansicht synchronisiert. Sobald sich der Wert des Kombinationsfelds ändert, wird die DataGrid-Ansicht zum gleichen Datensatz verschoben. Beim Bildlauf durch das Dataset im Raster oder bei Verwendung der Navigationssymbolleiste wird das Kombinationsfeld aktualisiert.

Das Hauptformular enthält die Kombinationsfeld-Steuerelemente, Schaltflächen-Steuerelemente zum Laden von Daten und zwei Label-Steuerelemente sowie ein Raster zum Anzeigen der Datenquelle und des ausgewählten Werts. Mit ArrayList, DataSet und DataView können Sie jedem im Kombinationsfeld-Steuerelement angezeigten Element einen Wert zuordnen. Wenn der Benutzer in der an das Kombinationsfeld gebundenen Produkttabelle z. B. den Eintrag Chai auswählt, wird Chai als ausgewählter Eintrag angezeigt. Die zugehörige ProductId steht über die SelectedValue-Eigenschaft allerdings ebenfalls zur Verfügung. Die ValueMember-Eigenschaft ermöglicht Ihnen die Auswahl des Elements, das den zugeordneten Wert enthält. Über die DisplayMember-Eigenschaft können Sie das Element auswählen, das im Kombinationsfeld-Steuerelement angezeigt wird.

Erstellen dieses Beispiels

Der größte Teil dieses Formulars wurde erstellt, indem Komponenten auf das Formular gezogen wurden. Anschließend wurden im Eigenschaftenfenster Smarttags und Einstellungen verwendet. Im Folgenden wird zusammenfassend dargestellt, wie Sie den DataGridView-Teil des Formulars von Grund auf neu erstellen können:

  1. Erstellen Sie ein neues Projekt vom Typ Windows-Anwendung.

  2. Öffnen Sie Form1, und wählen Sie das Datenquellenfenster aus. Das Fenster kann auch über das Menü Daten aktiviert werden.

  3. Klicken Sie im Datenquellenfenster auf Neue Datenquelle hinzufügen.

  4. Wählen Sie im Assistenten zum Konfigurieren von Datenquellen Datenbank als Datenquellentyp aus.

  5. Wählen Sie für die Datenverbindung einen Server aus, auf dem Northwind installiert ist.

  6. Im folgenden Schritt können Sie die Verbindungszeichenfolge in einer stark typisierten Anwendungseinstellungsdatei speichern.

    1. Wählen Sie unter Datenbankobjekte auswählen die Tabelle Products aus.

    2. Klicken Sie auf Fertig stellen, um das typisierte Dataset für die Datenbank Northwind zu erstellen. Die Ergebnisse sehen Sie im Datenquellenfenster.

  7. Ziehen Sie im Datenquellenfenster die Tabelle Products auf Form1.

  8. Sie sehen, dass ein datengebundenes DataGridView-Steuerelement und ein datengebundenes BindingNavigator-Steuerelement der Oberfläche des Formular-Designers hinzugefügt wurden. Außerdem sehen Sie, dass NorthwindDataSet, ProductsTableAdapter und ProductsBindingSource dem Komponentenfach hinzugefügt wurden.

Laden von Daten in das Formular

In diesem Beispiel laden Sie Daten in das Formular, ohne dass vom Benutzer Parameter bereitgestellt wurden. Mit dem DataSet-Designer können Sie wiederverwendbare DataAdapter zum Füllen von dsProducts2 verwenden.

Wenn Sie die Tabelle Employees aus dem Fenster Datenquellen ziehen, fügt Visual Studio automatisch Code zum Aufrufen der Standardabfrage in TableAdapter im Form.Load-Ereignis ein. In diesem Beispiel wurde dieser Code in die btnDC-Click-Methode verschoben:

' Fill the Lookup Tables
Me.ProductsTableAdapter.Fill(Me.NorthwindDataSet.Products)

Siehe auch

Aufgaben

Gewusst wie: Installieren und Problembehandlung von Datenbankkomponenten für Beispiele

Gewusst wie: Binden eines ComboBox-Steuerelements oder ListBox-Steuerelements in Windows Forms an Daten

Konzepte

Von Windows Forms unterstützte Datenquellen

Referenz

ComboBox

DataSource

ArrayList

DataTable

DataView