다음을 통해 공유


ListObject.DataSource 속성

컨트롤 내의 항목을 채우는 데 사용되는 값 목록이 들어 있는 소스를 가져오거나 설정합니다.

네임스페이스:  Microsoft.Office.Tools.Excel
어셈블리:  Microsoft.Office.Tools.Excel(Microsoft.Office.Tools.Excel.dll)

구문

‘선언
Property DataSource As Object
    Get
    Set
Object DataSource { get; set; }

속성 값

형식: System.Object
컨트롤 내의 항목을 채우는 데 사용되는 값 목록이 들어 있는 소스입니다.기본값은 nullNull 참조(Visual Basic의 경우 Nothing)입니다.

설명

런타임에 SetDataBinding 메서드를 사용하여 DataSource 및 DataMember 속성을 설정할 수 있습니다.

올바른 데이터 소스는 다음과 같습니다.

데이터 소스에 대한 자세한 내용은 Binding 클래스 개요를 참조하십시오.

DataSource 참조에 테이블이나 속성이 두 개 이상 있으면 바인딩할 테이블을 지정하는 문자열로 DataMember 속성을 설정해야 합니다. 예를 들어, DataSource가 Customers, Orders 및 OrderDetails 등 세 개의 테이블이 들어 있는 DataSet 또는 DataViewManager이면 바인딩할 테이블을 지정해야 합니다.

DataSource를 IList 인터페이스를 구현하지 않는 개체 또는 IListSource로 설정하면 예외가 throw됩니다.

예제

다음 코드 예제에서는 DataTable 개체가 두 개 있는 DataSet을 만들고 테이블 중 하나를 데이터로 채웁니다. 그런 다음 코드에서 ListObject의 DataSource 및 DataMember 속성을 사용하여 데이터가 들어 있는 테이블에 바인딩합니다.

이 예제는 문서 수준 사용자 지정을 위한 것입니다.

    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";
}

.NET Framework 보안

  • 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.

참고 항목

참조

ListObject 인터페이스

Microsoft.Office.Tools.Excel 네임스페이스