Jak: mapowanie kolumn ListObject do danych
Kiedy wiązania ListObject kontroli do DataTable, nie warto wyświetlić wszystkie kolumny na liście, lub może mieć pewnych kolumn, które nie są związane z danymi.Można mapować kolumny, które mają się pojawiać w ListObject po wywołaniu SetDataBinding metoda.
Dotyczy: Informacje przedstawione w tym temacie dotyczą projektów na poziomie dokumentu i projektów na poziomie aplikacji dla programów Excel 2013 i Excel 2010. Aby uzyskać więcej informacji, zobacz Funkcje dostępne w aplikacji pakietu Office i typ projektu.
Aby wyświetlić pokrewne wideo demonstracyjne, zobacz jak: utworzyć listę programu Excel, który jest połączony z listą programu SharePoint?.
Mapowanie kolumn
Aby mapować tabelę danych do kolumn na liście
Tworzenie DataTable na poziomie klasy.
Dim table As System.Data.DataTable = New System.Data.DataTable("Employees")
System.Data.DataTable table = new System.Data.DataTable("Employees");
Dodaj próbki kolumn i danych w Startup obsługi zdarzeń z Sheet1 klasy (w projekcie poziomie dokumentu) lub ThisAddIn klasy (w projekcie poziomie aplikacji).
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");
Wywołanie SetDataBinding metoda i przebieg w nazw kolumn w kolejności, powinien pojawić się.Obiekt listy będą zobowiązane do nowo utworzonego DataTable, ale kolejność kolumn w obiekcie listy będzie różnić się od kolejności pojawiają się w DataTable.
Me.List1.AutoSetDataBoundColumnHeaders = True Me.List1.SetDataBinding(table, "", "Title", "LastName", "FirstName")
this.list1.AutoSetDataBoundColumnHeaders = true; this.list1.SetDataBinding(table, "", "Title", "LastName", "FirstName");
Określanie kolumny niezamapowane
Podczas mapowania kolumn do DataTable, można również określić, że niektóre kolumny powinna nie jest zobowiązany do danych przekazując ciąg pusty.Nowa kolumna, która nie jest związana z danymi jest następnie dodany do ListObject kontroli.
Aby określić kolumna niezamapowani podczas mapowania kolumny obiektu ListObject
Wywołanie SetDataBinding metoda i przebieg w nazw kolumn w kolejności, powinien pojawić się.Użyj ciąg pusty, aby wskazać, gdzie niezamapowani kolumna zostanie dodana; w tym przypadku między kolumną tytuł i nazwisko.
Me.List1.SetDataBinding(table, "", "Title", "", "LastName", "FirstName")
this.list1.SetDataBinding(table, "", "Title", "", "LastName", "FirstName");
Kompilowanie kodu
W tym przykładzie kodu zakłada istniejące ListObject o nazwie list1 w arkuszu, w którym pojawia się ten kod.
Zobacz też
Zadania
Jak: wypełnienia formantów ListObject z danymi
Koncepcje
Dodawanie formantów do dokumentów pakietu Office w czasie wykonywania
Automatyzowanie programu Excel przy użyciu obiektów rozszerzony