Gewusst wie: Zuordnung von ListObject-Spalten zu Daten
Wenn Sie ein ListObject-Steuerelement an eine DataTable binden, möchten Sie möglicherweise nicht alle Spalten einer Liste anzeigen lassen bzw. nur bestimmte, nicht datengebundene Spalten.Sie können die Spalten zuordnen, die im ListObject angezeigt werden sollen, indem Sie die SetDataBinding-Methode aufrufen.
Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Dokument- und auf Anwendungsebene für Excel 2013 und Excel 2010. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.
Eine entsprechende Videodemo finden Sie im Thema zum Erstellen einer mit einer SharePoint-Liste verbundenen Liste in Excel (möglicherweise in englischer Sprache).
Zuordnen von Spalten
So ordnen Sie eine Datentabelle zu Spalten in einer Liste zu
Erstellen Sie das DataTable auf Klassenebene.
Dim table As System.Data.DataTable = New System.Data.DataTable("Employees")
System.Data.DataTable table = new System.Data.DataTable("Employees");
Fügen Sie dem Startup-Ereignishandler der Sheet1-Klasse (in einem Projekt auf Dokumentebene) oder der ThisAddIn-Klasse (in einem Projekt auf Anwendungsebene) Beispielspalten und -daten hinzu.
table.Columns.Add("Id", GetType(Int32)) table.Columns.Add("FirstName", GetType(String)) table.Columns.Add("LastName", GetType(String)) table.Columns.Add("Title", GetType(String)) table.Rows.Add(1, "Nancy", "Anderson", "Sales Representative") table.Rows.Add(2, "Robert", "Brown", "Sales Representative")
table.Columns.Add("Id", typeof(int)); table.Columns.Add("FirstName", typeof(string)); table.Columns.Add("LastName", typeof(string)); table.Columns.Add("Title", typeof(string)); table.Rows.Add(1, "Nancy", "Anderson", "Sales Representative"); table.Rows.Add(2, "Robert", "Brown", "Sales Representative");
Rufen Sie die SetDataBinding-Methode auf, und übergeben Sie die Spaltennamen in der Reihenfolge, in der sie angezeigt werden sollen.Das Listen-Objekt wird an die neu erstellte DataTable gebunden. Die Reihenfolge der Spalten im Listen-Objekt wird sich aber von jener der DataTable unterscheiden.
Me.List1.AutoSetDataBoundColumnHeaders = True Me.List1.SetDataBinding(table, "", "Title", "LastName", "FirstName")
this.list1.AutoSetDataBoundColumnHeaders = true; this.list1.SetDataBinding(table, "", "Title", "LastName", "FirstName");
Angeben von nicht zugeordneten Spalten
Wenn Sie Spalten einer DataTable zuordnen, können Sie auch angeben, dass bestimmte Spalten nicht an Daten gebunden werden sollen, indem Sie eine leere Zeichenfolge einfügen.Eine neue Spalte, die nicht an Daten gebunden ist, wird dann dem ListObject-Steuerelement hinzugefügt.
So geben Sie eine nicht zugeordnete Spalte im Zuge der Zuordnung von ListObject-Spalten an
Rufen Sie die SetDataBinding-Methode auf, und übergeben Sie die Spaltennamen in der Reihenfolge, in der sie angezeigt werden sollen.Verwenden Sie zum Angeben einer nicht zugeordneten Spalte eine leere Zeichenfolge. In diesem Fall würde sich die leere Zeichenfolge zwischen der Spalte mit der Anrede und der Spalte mit dem Nachnamen befinden.
Me.List1.SetDataBinding(table, "", "Title", "", "LastName", "FirstName")
this.list1.SetDataBinding(table, "", "Title", "", "LastName", "FirstName");
Kompilieren des Codes
In diesem Codebeispiel wird davon ausgegangen, dass ein ListObject mit dem Namen list1 in dem Arbeitsblatt vorhanden ist, in dem dieser Code angezeigt wird.
Siehe auch
Aufgaben
Gewusst wie: Füllen eines ListObject-Steuerelements mit Daten
Konzepte
Erweitern von Word-Dokumenten und Excel-Arbeitsmappen in Add-Ins auf Anwendungsebene zur Laufzeit
Hinzufügen von Steuerelementen zu Office-Dokumenten zur Laufzeit
Automatisieren von Excel mithilfe von erweiterten Objekten