Freigeben über


ListObject.DataSource-Eigenschaft

Ruft die Quelle ab oder legt die Quelle fest, die eine Liste von Werten enthält, die für das Auffüllen der Elemente innerhalb des Steuerelements verwendet werden.

Namespace:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)

Syntax

'Declaration
Property DataSource As Object
Object DataSource { get; set; }

Eigenschaftswert

Typ: System.Object
Die Quelle, die eine Liste von Werten enthält, die für das Auffüllen der Elemente innerhalb des Steuerelements verwendet werden.Der Standardwert ist nullein Nullverweis (Nothing in Visual Basic).

Hinweise

Verwenden Sie zur Laufzeit die SetDataBinding-Methode, um die DataSource-Eigenschaft und die DataMember-Eigenschaft festzulegen.

Folgende Datenquellen sind gültig:

Weitere Informationen zu Datenquellen finden Sie in der Binding-Klassenübersicht.

Wenn der DataSource-Verweis mehr als eine Tabelle oder Eigenschaft enthält, müssen Sie die DataMember-Eigenschaft auf eine Zeichenfolge festlegen, die die Tabelle angibt, zu der die Bindung hergestellt werden soll.Wenn z. B. die DataSource ein DataSet oder ein DataViewManager ist, der drei Tabellen mit den Namen Customers, Orders und OrderDetails enthält, müssen Sie die Tabelle angeben, zu der die Bindung hergestellt werden soll.

Das Festlegen der DataSource auf ein Objekt, das die IList-Schnittstelle oder eine IListSource nicht implementiert, führt dazu, dass eine Ausnahme ausgelöst wird.

Beispiele

Im folgenden Codebeispiel wird ein DataSet mit zwei DataTable-Objekten erstellt und eine der Tabellen mit Daten aufgefüllt.Anschließend legt der Code die DataSource-Eigenschaft und die DataMember-Eigenschaft des ListObject fest, um eine Bindung an die Tabelle herzustellen, die Daten enthält.

Dieses Beispiel bezieht sich auf eine Anpassung auf Dokumentebene.

    Private Sub ListObject_DataSourceAndMember()
        ' Create a DataSet and two DataTables.
        Dim ordersDataSet As New DataSet("ordersDataSet")
        Dim tableCustomers As New DataTable("Customers")
        Dim tableProducts As New DataTable("Products")
        ordersDataSet.Tables.Add(tableCustomers)
        ordersDataSet.Tables.Add(tableProducts)

        ' Add a data to the Customers DataTable.
        tableCustomers.Columns.Add(New DataColumn("LastName"))
        tableCustomers.Columns.Add(New DataColumn("FirstName"))
        Dim dr As DataRow = tableCustomers.NewRow()
        dr("LastName") = "Chan"
        dr("FirstName") = "Gareth"
        tableCustomers.Rows.Add(dr)

        ' Create a list object.
        Dim List1 As Microsoft.Office.Tools.Excel.ListObject = _
            Me.Controls.AddListObject(Me.Range( _
            "A1"), "Customers")

        ' Bind the list object to the Customers table.
        List1.AutoSetDataBoundColumnHeaders = True
        List1.DataSource = ordersDataSet
        List1.DataMember = "Customers"

    End Sub

private void ListObject_DataSourceAndMember()
{
    // Create a DataSet and two DataTables.
    DataSet ordersDataSet = new DataSet("ordersDataSet");
    DataTable tableCustomers = new DataTable("Customers");
    DataTable tableProducts = new DataTable("Products");
    ordersDataSet.Tables.Add(tableCustomers);
    ordersDataSet.Tables.Add(tableProducts);

    // Add a data to the Customers DataTable.
    tableCustomers.Columns.Add(new DataColumn("LastName"));
    tableCustomers.Columns.Add(new DataColumn("FirstName"));
    DataRow dr = tableCustomers.NewRow();
    dr["LastName"] = "Chan";
    dr["FirstName"] = "Gareth";
    tableCustomers.Rows.Add(dr);

    // Create a list object.
    Microsoft.Office.Tools.Excel.ListObject list1 = 
        this.Controls.AddListObject(
        this.Range["A1"], "Customers");

    // Bind the list object to the Customers table.
    list1.AutoSetDataBoundColumnHeaders = true;
    list1.DataSource = ordersDataSet;
    list1.DataMember = "Customers";
}

.NET Framework-Sicherheit

Siehe auch

Referenz

ListObject Schnittstelle

Microsoft.Office.Tools.Excel-Namespace