HtmlSelect.DataMember Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает или задает набор данных для привязки к элементу управления HtmlSelect из источника данных DataSource с несколькими наборами данных.
public:
virtual property System::String ^ DataMember { System::String ^ get(); void set(System::String ^ value); };
public virtual string DataMember { get; set; }
member this.DataMember : string with get, set
Public Overridable Property DataMember As String
Значение свойства
Набор данных для привязки к элементу управления HtmlSelect из источника данных DataSource с несколькими наборами данных. По умолчанию свойство содержит пустую строку (""), показывающую, что значение свойства не задано.
Исключения
Свойство DataMember задано на этапе привязки данных для элемента управления HtmlSelect.
Примеры
В следующем примере кода показано, как использовать DataMember свойство для указания набора данных для привязки к HtmlSelect элементу DataSource управления из свойства с несколькими наборами данных.
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<!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>
<title> HtmlSelect Example </title>
<script runat="server">
void Page_Load (Object sender, EventArgs e)
{
// Bind the HtmlSelect control to a data source when the page is initially loaded.
if (!IsPostBack)
{
// Create a data set to store the tables.
DataSet ds = new DataSet("TitleDataSet");
DataRow dr;
// Create the authors table with a single column.
DataTable authors = new DataTable("Authors");
authors.Columns.Add(new DataColumn("LName", typeof(string)));
// Add the authors table to the data set.
ds.Tables.Add(authors);
// Create sample data in the authors table.
for (int i = 0; i < 9; i++)
{
// Create a new row for the authors table.
dr = authors.NewRow();
// Add data to the LName column (column 0 in the row).
dr[0] = "Author " + i.ToString();
// Insert the row into the authors table.
authors.Rows.Add(dr);
}
// Create the titles table with a single column.
DataTable titles = new DataTable("Titles");
titles.Columns.Add(new DataColumn("BookTitle", typeof(string)));
// Add the titles table to the data set.
ds.Tables.Add(titles);
// Create sample data in the titles table.
for (int i = 0; i < 9; i++)
{
// Create a new row for the titles table.
dr = titles.NewRow();
// Add data to the BookTitle column (column 0 in the row).
dr[0] = "Title " + i.ToString();
// Insert the row into the titles table.
titles.Rows.Add(dr);
}
// Bind the HtmlSelect control to the data source.
Select1.DataSource = ds;
Select1.DataMember = "Titles";
Select1.DataTextField = "BookTitle";
Select1.DataBind();
}
}
void Button_Click (Object sender, EventArgs e)
{
// Display the selected items.
Label1.Text = "You selected:";
for (int i=0; i<=Select1.Items.Count - 1; i++)
{
if (Select1.Items[i].Selected)
Label1.Text += "<br /> - " + Select1.Items[i].Text;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3> HtmlSelect Example </h3>
Select items from the list. <br />
Use the Control or Shift key to select multiple items. <br /><br />
<select id="Select1"
multiple="true"
runat="server"/>
<br /><br />
<button id="Button1"
onserverclick="Button_Click"
runat="server">
Submit
</button>
<br /><br />
<asp:Label id="Label1"
runat="server"/>
</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>
<title> HtmlSelect Example </title>
<script runat="server">
Sub Page_Load (sender As Object, e As EventArgs)
' Bind the HtmlSelect control to a data source when the page is initially loaded.
If Not IsPostBack Then
Dim i As Integer
' Create a data set to store the tables.
Dim ds As DataSet = New DataSet("TitleDataSet")
Dim dr As DataRow
' Create the authors table with a single column.
Dim authors As DataTable = New DataTable("Authors")
authors.Columns.Add(New DataColumn("LName", GetType(String)))
' Add the authors table to the data set.
ds.Tables.Add(authors)
' Create sample data in the authors table.
For i = 0 To 9
' Create a new row for the authors table.
dr = authors.NewRow()
' Add data to the LName column (column 0 in the row).
dr(0) = "Author " & i.ToString()
' Insert the row into the authors table.
authors.Rows.Add(dr)
Next i
' Create the titles table with a single column.
Dim titles As DataTable = New DataTable("Titles")
titles.Columns.Add(New DataColumn("BookTitle", GetType(String)))
' Add the titles table to the data set.
ds.Tables.Add(titles)
' Create sample data in the titles table.
For i = 0 To 9
' Create a new row for the titles table.
dr = titles.NewRow()
' Add data to the BookTitle column (column 0 in the row).
dr(0) = "Title " & i.ToString()
' Insert the row into the titles table.
titles.Rows.Add(dr)
Next i
' Bind the HtmlSelect control to the data source.
Select1.DataSource = ds
Select1.DataMember = "Titles"
Select1.DataTextField = "BookTitle"
Select1.DataBind()
End If
End Sub
Sub Button_Click (sender As Object, e As EventArgs)
Dim i As Integer
' Display the selected items.
Label1.Text = "You selected:"
For i=0 To Select1.Items.Count - 1
If Select1.Items(i).Selected Then
Label1.Text = Label1.Text & "<br /> - " & Select1.Items(i).Text
End If
Next i
End Sub
</script>
</head>
<body>
<form id="form1" runat="server">
<h3> HtmlSelect Example </h3>
Select items from the list. <br />
Use the Control or Shift key to select multiple items. <br /><br />
<select id="Select1"
multiple="true"
runat="server"/>
<br /><br />
<button id="Button1"
onserverclick="Button_Click"
runat="server">
Submit
</button>
<br /><br />
<asp:Label id="Label1"
runat="server"/>
</form>
</body>
</html>
Комментарии
DataSource Если свойство содержит несколько наборов данных, используйте DataMember свойство , чтобы указать, какой набор данных следует привязать к элементу управления. Например, если у вас есть System.Data.DataSet объект с несколькими таблицами, используйте это свойство, чтобы указать, какую таблицу следует привязать к элементу управления .
После указания источника данных для привязки к элементу управления можно указать, какие поля из источника данных следует привязать к ListItem.Text свойствам и ListItem.Value каждого элемента в элементе управления, задав DataTextField соответственно свойства и DataValueField .