Compartilhar via


Propriedade ListObject.DataSource

Obtém ou define a fonte que contém uma lista de valores que são usados para preencher os itens dentro do controle.

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

Sintaxe

'Declaração
Property DataSource As Object
    Get
    Set
Object DataSource { get; set; }

Valor de propriedade

Tipo: System.Object
A fonte que contém uma lista de valores que são usados para preencher os itens dentro do controle.O valor padrão é nulluma referência nula (Nothing no Visual Basic).

Comentários

Em tempo de execução, use o SetDataBinding método para definir o DataSource e DataMember Propriedades.

As fontes de dados a seguir são válidas:

Consulte o Binding Visão geral da classe para obter mais informações sobre fontes de dados.

Se a DataSource referência contém mais de uma tabela ou uma propriedade, você deve definir o DataMember a propriedade como uma seqüência que especifica a tabela para vincular a. Por exemplo, se a DataSource é um DataSet ou DataViewManager que contém três tabelas chamadas de clientes, pedidos e OrderDetails, você deve especificar a tabela para vincular a.

Definindo a DataSource a um objeto que implementa o IList interface ou um IListSource causará uma exceção ser acionada.

Exemplos

O exemplo de código a seguir cria um DataSet com dois DataTable objetos e preenche uma das tabelas com dados. O código define o DataSource e DataMember Propriedades da ListObject para vincular a tabela que contém dados.

Este exemplo é para uma personalização em nível de documento.

    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", missing], "Customers");

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

Segurança do .NET Framework

Consulte também

Referência

ListObject Interface

Namespace Microsoft.Office.Tools.Excel