ListObject.DataSource 속성
컨트롤 내의 항목을 채우는 데 사용되는 값 목록이 들어 있는 소스를 가져오거나 설정합니다.
네임스페이스: Microsoft.Office.Tools.Excel
어셈블리: Microsoft.Office.Tools.Excel(Microsoft.Office.Tools.Excel.dll)
구문
‘선언
Property DataSource As Object
Object DataSource { get; set; }
속성 값
형식: System.Object
컨트롤 내의 항목을 채우는 데 사용되는 값 목록이 들어 있는 소스입니다.기본값은 nullNull 참조(Visual Basic의 경우 Nothing)입니다.
설명
런타임에 SetDataBinding 메서드를 사용하여 DataSource 및 DataMember 속성을 설정할 수 있습니다.
올바른 데이터 소스는 다음과 같습니다.
IListSource 인터페이스를 구현하는 모든 구성 요소
IList 인터페이스를 구현하는 모든 구성 요소
데이터 소스에 대한 자세한 내용은 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"], "Customers");
// Bind the list object to the Customers table.
list1.AutoSetDataBoundColumnHeaders = true;
list1.DataSource = ordersDataSet;
list1.DataMember = "Customers";
}
.NET Framework 보안
- 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.