ListObject.DataSource (Propiedad)

Obtiene o establece el origen que contiene una lista de valores que se utilizan para rellenar los elementos del control.

Espacio de nombres:  Microsoft.Office.Tools.Excel
Ensamblado:  Microsoft.Office.Tools.Excel (en Microsoft.Office.Tools.Excel.dll)

Sintaxis

'Declaración
Property DataSource As Object
    Get
    Set
Object DataSource { get; set; }

Valor de propiedad

Tipo: System.Object
Origen que contiene una lista de valores que se utilizan para rellenar los elementos del control.El valor predeterminado es nullreferencia null (Nothing en Visual Basic).

Comentarios

En tiempo de ejecución, utilice el método SetDataBinding para establecer las propiedades DataSource y DataMember.

Los orígenes de datos siguientes son válidos:

Vea la información general de la clase Binding para obtener más información sobre orígenes de datos.

Si la referencia de DataSource contiene más de una tabla o propiedad, debe establecer la propiedad DataMember en una cadena que especifique la tabla a la que se va a enlazar. Por ejemplo, si DataSource es DataSet o DataViewManager con tres tablas denominadas Customers, Orders y OrderDetails, debe especificar la tabla a la que se va a enlazar.

Si se establece DataSource en un objeto que no implementa la interfaz IList ni IListSource hará que se produzca una excepción.

Ejemplos

En el ejemplo de código siguiente se crea DataSet con dos objetos DataTable y se rellena con datos una de las tablas. Después el código establece las propiedades DataSource y DataMember de ListObject para enlazarse a la tabla que contiene los datos.

Se trata de un ejemplo para una personalización en el nivel del 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";
}

Seguridad de .NET Framework

Vea también

Referencia

ListObject Interfaz

Microsoft.Office.Tools.Excel (Espacio de nombres)