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 的对象,将导致引发异常。
示例
下面的代码示例创建一个具有两个 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 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。