Freigeben über


Exemplarische Vorgehensweise: Komplexe Datenbindung in Projekten auf Dokumentebene

Diese exemplarische Vorgehensweise veranschaulicht die Grundlagen der komplexen Datenbindung in einem Projekt auf Dokumentebene.In einem Microsoft Office Excel-Arbeitsblatt können mehrere Zellen an Felder der SQL Server-Datenbank Northwind gebunden werden.

Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Dokumentebene für Excel 2013 und Excel 2010. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.

In dieser exemplarischen Vorgehensweise werden die folgenden Aufgaben veranschaulicht:

  • Hinzufügen einer Datenquelle zum Arbeitsmappenprojekt

  • Hinzufügen datengebundener Steuerelemente zu einem Arbeitsblatt

  • Speichern von Datenänderungen in der Datenbank

HinweisHinweis

Ihr Computer zeigt möglicherweise für einige der Elemente der Visual Studio-Benutzeroberfläche in der folgenden Anleitung andere Namen oder Standorte an. Diese Elemente sind von der jeweiligen Visual Studio-Version und den verwendeten Einstellungen abhängig. Weitere Informationen finden Sie unter Visual Studio-Einstellungen.

Vorbereitungsmaßnahmen

Zum Durchführen dieser exemplarischen Vorgehensweise benötigen Sie die folgenden Komponenten:

-

Eine Version von Visual Studio 2012, die die Microsoft Office-Entwicklungstools einschließt. Weitere Informationen finden Sie unter [Konfigurieren eines Computers zum Entwickeln von Office-Lösungen](bb398242\(v=vs.110\).md).
  • Excel 2013 oder Excel 2010. 

  • Zugriff auf einen Server mit der SQL Server-Beispieldatenbank Northwind.

  • Lese- und Schreibberechtigungen für die SQL Server-Datenbank.

Erstellen eines neuen Projekts

Zunächst müssen Sie ein Excel-Arbeitsmappenprojekt erstellen.

So erstellen Sie ein neues Projekt

  • Erstellen Sie ein Excel-Arbeitsmappenprojekt mit dem Namen My Complex Data Binding.Wählen Sie im Assistenten Neues Dokument erstellen aus.

    Weitere Informationen finden Sie unter Gewusst wie: Erstellen von Office-Projekten in Visual Studio.

    Visual Studio öffnet die neue Excel-Arbeitsmappe im Designer und fügt dem Projektmappen-Explorer das Projekt "My Complex Data Binding" hinzu.

Erstellen der Datenquelle

Verwenden Sie das Datenquellenfenster, um dem Projekt ein typisiertes Dataset hinzuzufügen.

So erstellen Sie die Datenquelle

  1. Wenn das Datenquellen nicht sichtbar ist, zeigen Sie sie durch, auf der Menüleiste auf und Ansicht auswählen, Weitere Fenster, Datenquellen.

  2. Wählen Sie Neue Datenquelle hinzufügen, um Assistent zum Konfigurieren von Datenquellen zu starten.

  3. Wählen Sie Datenbank aus, und klicken Sie auf Weiter.

  4. Wählen Sie eine Datenverbindung zur Northwind SQL Server-Beispieldatenbank aus, oder fügen Sie mithilfe der Schaltfläche Neue Verbindung eine neue Verbindung hinzu.

  5. Klicken Sie nach dem Auswählen oder Erstellen einer Verbindung auf Weiter.

  6. Deaktivieren Sie ggf. die Option zum Speichern der Verbindung, und klicken Sie dann auf Weiter.

  7. Erweitern Sie im Fenster Datenbankobjekte den Knoten Tabellen.

  8. Aktivieren Sie das Kontrollkästchen neben der Tabelle Employees.

  9. Klicken Sie auf Fertig stellen.

Der Assistent fügt dem Datenquellen die Tabelle Employees hinzu.Außerdem wird dem Projekt ein typisiertes Dataset hinzugefügt, das im Projektmappen-Explorer sichtbar ist.

Hinzufügen von Steuerelementen zum Arbeitsblatt

Beim Öffnen einer Arbeitsmappe wird darin die Tabelle Employees angezeigt.Benutzer können auch die Daten ändern und anschließend die Änderungen durch Klicken auf eine Schaltfläche in der Datenbank speichern.

Soll die Arbeitsmappe automatisch an die Tabelle gebunden werden, kann der Arbeitsmappe im Fenster Datenquellen ein ListObject-Steuerelement hinzugefügt werden.Fügen Sie aus der Toolbox ein Button-Steuerelement hinzu, um dem Benutzer das Speichern von Änderungen zu ermöglichen.

So fügen Sie ein Listenobjekt hinzu

  1. Überprüfen Sie, ob die My Complex Data Binding.xlsx Arbeitsmappe im Visual Studio-Designer geöffnet ist, mit Blatt1 angezeigt.

  2. Öffnen Sie das Fenster Datenquellen, und wählen Sie den Knoten Employees aus.

  3. Klicken Sie auf den Dropdownpfeil, der angezeigt wird.

  4. Wählen Sie in der Dropdownliste ListObject aus.

  5. Ziehen Sie die Tabelle Employees zur Zelle A6.

    Ein ListObject-Steuerelement mit Namen EmployeesListObject wird in der Zelle A6 erstellt.Gleichzeitig werden dem Projekt eine BindingSource mit Namen EmployeesBindingSource, ein Tabellenadapter und eine DataSet-Instanz hinzugefügt.Das Steuerelement ist an die BindingSource gebunden, die wiederum an die DataSet-Instanz gebunden ist.

So fügen Sie eine Schaltfläche hinzu

  • Klicken Sie in der Toolbox auf die Registerkarte Allgemeine Steuerelemente, und fügen Sie von dort aus der Zelle A4 des Arbeitsblatts ein Button-Steuerelement hinzu.

Der nächste Schritt besteht darin, der Schaltfläche Text hinzuzufügen, wenn das Arbeitsblatt geöffnet wird.

Initialisieren des Steuerelements

Fügen Sie der Schaltfläche den Text im Startup-Ereignishandler hinzu.

So initialisieren Sie das Steuerelement

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Sheet1.vb oder Sheet1.cs, und klicken Sie dann im Kontextmenü auf Code anzeigen.

  2. Fügen Sie der Sheet1_Startup-Methode den folgenden Code hinzu, um den Text für button festzulegen.

    Me.Button1.Text = "Save"
    
    this.button1.Text = "Save";
    
  3. Nur in C#: Fügen Sie einen Ereignishandler für das Click-Ereignis zur Sheet1_Startup-Methode hinzu.

    this.button1.Click += new EventHandler(button1_Click);
    

Fügen Sie nun Code hinzu, um das Click-Ereignis der Schaltfläche zu behandeln.

Speichern von Änderungen in der Datenbank

Alle vorgenommenen Datenänderungen sind nur im lokalen Dataset vorhanden, solange sie nicht explizit in der Datenbank gespeichert werden.

So speichern Sie Änderungen in der Datenbank

  • Fügen Sie für das Click-Ereignis von button einen Ereignishandler hinzu. Um alle am Dataset vorgenommenen Änderungen in die Datenbank zu übernehmen, fügen Sie folgenden Code hinzu.

    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Button1.Click
    
        Try
            Me.EmployeesTableAdapter.Update(Me.NorthwindDataSet.Employees)
    
        Catch ex As System.Data.DataException
            MessageBox.Show(ex.Message)
        End Try
    End Sub
    
    private void button1_Click(object sender, EventArgs e)
    {
        try
        {
            this.employeesTableAdapter.Update(this.northwindDataSet.Employees);
        }
        catch (System.Data.DataException ex)
        {
            MessageBox.Show(ex.Message);
        }
    }
    

Testen der Anwendung

Sie können die Arbeitsmappe jetzt testen, um zu überprüfen, ob die Daten wie erwartet angezeigt werden und Sie die Daten im Listenobjekt bearbeiten können.

So testen Sie die Datenbindung

  • Drücken Sie F5.

    Stellen Sie sicher, dass das Listenobjekt beim Öffnen der Arbeitsmappe mit Daten aus der Tabelle Employees gefüllt wird.

So ändern Sie Daten

  1. Klicken Sie auf die Zelle B7, die den Namen Davolio enthalten sollte.

  2. Geben Sie den Namen Anderson ein, und drücken Sie die EINGABETASTE.

So ändern Sie einen Spaltenheader

  1. Klicken Sie auf die Zelle, die den Spaltenheader LastName enthält.

  2. Geben Sie "Last Name" mit einem Leerzeichen zwischen den beiden Wörtern ein, und drücken Sie die EINGABETASTE.

So speichern Sie Daten

  1. Klicken Sie im Arbeitsblatt auf Speichern.

  2. Beenden Sie Excel.Klicken Sie auf Nein, wenn Sie zum Speichern der vorgenommenen Änderungen aufgefordert werden.

  3. Drücken Sie F5, um das Projekt erneut auszuführen.

    Das Listenobjekt wird mit Daten aus der Tabelle Employees aufgefüllt.

  4. Beachten Sie, dass in Zelle B7 immer noch der Name "Anderson" steht. Dabei handelt es sich um die Datenänderung, die Sie vorgenommen haben und die jetzt in der Datenbank gespeichert ist.Der Spaltenheader LastName hat wieder seine ursprüngliche Schreibweise ohne Leerzeichen angenommen, weil der Spaltenheader nicht an die Datenbank gebunden ist, und Sie die im Arbeitsblatt vorgenommenen Änderungen nicht abgespeichert haben.

So fügen Sie neue Zeilen hinzu

  1. Wählen Sie im Listenobjekt eine Zelle aus.

    Am unteren Rand der Liste wird eine neue Reihe mit einem Sternchen (*) in der ersten Zelle angezeigt.

  2. Fügen Sie der leeren Zeile folgende Informationen hinzu:

    EmployeeID

    LastName

    FirstName

    Titel

    10

    Ito

    Shu

    Sales Manager

So löschen Sie Zeilen

  • Klicken Sie mit der rechten Maustaste ganz links auf der Arbeitsmappe auf die Nummer 16 (Zeile 16), und klicken Sie anschließend auf Löschen.

So sortieren Sie die Zeilen in der Liste

  1. Wählen Sie in der Liste eine Zelle aus.

    Pfeilschaltflächen werden in den einzelnen Spaltenheadern angezeigt.

  2. Klicken Sie im Spaltenheader Last Name auf die Pfeilschaltfläche.

  3. Klicken Sie auf Aufsteigend sortieren.

    Die Zeilen werden alphabetisch nach Nachnamen sortiert.

So filtern Sie Informationen

  1. Wählen Sie in der Liste eine Zelle aus.

  2. Klicken Sie im Spaltenheader Title auf die Pfeilschaltfläche.

  3. Klicken Sie auf Sales Representative.

    Die Liste zeigt nur die Zeilen an, bei denen in der Spalte Title der Eintrag Sales Representative steht.

  4. Klicken Sie im Spaltenheader Title erneut auf die Pfeilschaltfläche.

  5. Klicken Sie auf (All).

    Der Filter wird entfernt, und es werden alle Zeilen angezeigt.

Nächste Schritte

In dieser exemplarischen Vorgehensweise werden die Grundlagen für das Binden einer Tabelle in einer Datenbank an ein Listenobjekt veranschaulicht.Die folgenden Aufgaben könnten sich daran anschließen:

Siehe auch

Aufgaben

Exemplarische Vorgehensweise: Einfache Datenbindung in Projekten auf Dokumentebene

Weitere Ressourcen

Binden von Daten an Steuerelemente in Office-Projektmappen

Daten in Office-Lösungen