BaseDataList.DataMember 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置多成员数据源中要绑定到数据列表控件的特定数据成员。
public:
property System::String ^ DataMember { System::String ^ get(); void set(System::String ^ value); };
public string DataMember { get; set; }
[System.Web.UI.Themeable(false)]
public string DataMember { get; set; }
member this.DataMember : string with get, set
[<System.Web.UI.Themeable(false)>]
member this.DataMember : string with get, set
Public Property DataMember As String
属性值
多成员数据源中的数据成员。 默认值是 Empty。
- 属性
示例
下面的代码示例演示如何使用 DataMember 属性指定要绑定到DataGrid控件的对象DataSet中的哪个表。
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace = "System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title> BaseDataList DataMember Example </title>
<script runat="server">
// Create sample data for the DataGrid control with two tables,
// Employee and Customer.
DataSet CreateDataSet()
{
// Create a table to store employee values.
DataTable EmployeeTable = new DataTable("Employee");
DataRow TempDataRow;
// Define the columns for the Employee table.
EmployeeTable.Columns.Add(
new DataColumn("EmployeeName", typeof(string)));
EmployeeTable.Columns.Add(
new DataColumn("EmployeeID", typeof(int)));
// Populate the Employee table.
for (int i=1; i<=5; i++)
{
TempDataRow = EmployeeTable.NewRow();
TempDataRow[0] = "Employee " + i.ToString();
TempDataRow[1] = (i+1700);
EmployeeTable.Rows.Add(TempDataRow);
}
// Create a table to store customer values.
DataTable CustomerTable = new DataTable("Customer");
// Define the columns for the Customer table.
CustomerTable.Columns.Add(
new DataColumn("CustomerName", typeof(string)));
CustomerTable.Columns.Add(
new DataColumn("CustomerID", typeof(int)));
// Populate the Customer table.
for (int i=1; i<=5; i++)
{
TempDataRow = CustomerTable.NewRow();
TempDataRow[0] = "Customer " + i.ToString();
TempDataRow[1] = (i+1700);
CustomerTable.Rows.Add(TempDataRow);
}
// Create a DataSet and add the Employee and Customer tables.
DataSet ds = new DataSet();
ds.Tables.Add(EmployeeTable);
ds.Tables.Add(CustomerTable);
return ds;
}
void Page_Load(Object sender, EventArgs e)
{
// The data source only needs to be bound to the DataList
// control the first time the page is accessed.
if(!IsPostBack)
{
// Create the sample data for the DataList control.
ItemsGrid.DataSource = CreateDataSet();
// The data source in this example contains multiple tables.
// Specify which table to display in the DataList control.
ItemsGrid.DataMember = "Customer";
// Bind the data source to the control.
ItemsGrid.DataBind();
}
}
void Index_Change(Object sender, EventArgs e)
{
// Create the sample data for the DataList control.
ItemsGrid.DataSource = CreateDataSet();
// The data source in this example contains multiple tables.
// Specify which table to display in the DataList control
// based on the user's selection from the DropDownList control.
ItemsGrid.DataMember = SourceList.SelectedItem.Text;
// Bind the data source to the control.
ItemsGrid.DataBind();
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3> BaseDataList DataMember Example </h3>
<asp:DataGrid id="ItemsGrid"
AutoGenerateColumns="True"
runat="server">
<headerstyle backcolor="#00aaaa"/>
</asp:DataGrid>
<br /><br />
Select the data source: <br />
<asp:DropDownList id="SourceList"
AutoPostBack="True"
OnSelectedIndexChanged="Index_Change"
runat="server">
<asp:Listitem Selected="True">Customer</asp:Listitem>
<asp:Listitem>Employee</asp:Listitem>
</asp:DropDownList>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace = "System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title> BaseDataList DataMember Example </title>
<script runat="server">
' Create sample data for the DataGrid control with two tables,
' Employee and Customer.
Function CreateDataSet() As DataSet
' Create a table to store employee values.
Dim EmployeeTable As DataTable = New DataTable("Employee")
Dim TempDataRow As DataRow
' Define the columns for the Employee table.
EmployeeTable.Columns.Add( _
New DataColumn("EmployeeName", GetType(String)))
EmployeeTable.Columns.Add( _
New DataColumn("EmployeeID", GetType(Integer)))
' Populate the Employee table.
Dim i As Integer
For i=1 To 5
TempDataRow = EmployeeTable.NewRow()
TempDataRow(0) = "Employee " & i.ToString()
TempDataRow(1) = (i+1700)
EmployeeTable.Rows.Add(TempDataRow)
Next
' Create a table to store customer values.
Dim CustomerTable As DataTable = New DataTable("Customer")
' Define the columns for the Customer table.
CustomerTable.Columns.Add( _
New DataColumn("CustomerName", GetType(String)))
CustomerTable.Columns.Add( _
New DataColumn("CustomerID", GetType(Integer)))
' Populate the Customer table.
For i=1 To 5
TempDataRow = CustomerTable.NewRow()
TempDataRow(0) = "Customer " & i.ToString()
TempDataRow(1) = (i+1700)
CustomerTable.Rows.Add(TempDataRow)
Next
' Create a DataSet and add the Employee and Customer tables.
Dim ds As DataSet = New DataSet()
ds.Tables.Add(EmployeeTable)
ds.Tables.Add(CustomerTable)
Return ds
End Function
Sub Page_Load(sender As Object, e As EventArgs)
' The data source only needs to be bound to the DataList
' control the first time the page is accessed.
If Not IsPostBack Then
' Create the sample data for the DataList control.
ItemsGrid.DataSource = CreateDataSet()
' The data source in this example contains multiple tables.
' Specify which table to display in the DataList control.
ItemsGrid.DataMember = "Customer"
' Bind the data source to the control.
ItemsGrid.DataBind()
End If
End Sub
Sub Index_Change(sender As Object, e As EventArgs)
' Create the sample data for the DataList control.
ItemsGrid.DataSource = CreateDataSet()
' The data source in this example contains multiple tables.
' Specify which table to display in the DataList control
' based on the user's selection from the DropDownList control.
ItemsGrid.DataMember = SourceList.SelectedItem.Text
' Bind the data source to the control.
ItemsGrid.DataBind()
End Sub
</script>
</head>
<body>
<form id="form1" runat="server">
<h3> BaseDataList DataMember Example </h3>
<asp:DataGrid id="ItemsGrid"
AutoGenerateColumns="True"
runat="server">
<headerstyle backcolor="#00aaaa"/>
</asp:DataGrid>
<br /><br />
Select the data source: <br />
<asp:DropDownList id="SourceList"
AutoPostBack="True"
OnSelectedIndexChanged="Index_Change"
runat="server">
<asp:Listitem Selected="True">Customer</asp:Listitem>
<asp:Listitem>Employee</asp:Listitem>
</asp:DropDownList>
</form>
</body>
</html>
注解
DataMember使用 属性指定要从多成员数据源绑定到列表控件的成员。 例如,如果数据源在 属性中 DataSource 指定了多个表,请使用 DataMember 属性指定要绑定到数据列表控件的表。
无法通过主题或样式表主题设置此属性。 有关详细信息,请参阅 ThemeableAttribute 和 ASP.NET 主题和外观。