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 속성을 설정할 수 있습니다.
올바른 데이터 소스는 다음과 같습니다.
DataTable입니다.
DataViewManager입니다.
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", missing], "Customers");
// Bind the list object to the Customers table.
list1.AutoSetDataBoundColumnHeaders = true;
list1.DataSource = ordersDataSet;
list1.DataMember = "Customers";
}
.NET Framework 보안
- 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.