HtmlSelect.DataMember Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece el conjunto de datos que se va a enlazar al control HtmlSelect desde una propiedad DataSource con varios conjuntos de datos.
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
Valor de propiedad
Conjunto de datos que se va a enlazar al control HtmlSelect a partir de una propiedad DataSource con varios conjuntos de datos. El valor predeterminado es una cadena vacía (""), lo que indica que aún no se ha establecido la propiedad.
Excepciones
La propiedad DataMember se establece durante la fase de enlace de datos del control HtmlSelect.
Ejemplos
En el HtmlSelect ejemplo de código siguiente se muestra cómo usar la DataMember propiedad para especificar un conjunto de datos que se enlazarán al control desde una DataSource propiedad con varios conjuntos de datos.
<%@ 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>
Comentarios
Si la DataSource propiedad contiene varios conjuntos de datos, utilice la DataMember propiedad para especificar qué conjunto de datos se van a enlazar al control. Por ejemplo, si tiene un System.Data.DataSet objeto con varias tablas, use esta propiedad para indicar qué tabla enlazar al control.
Después de especificar el origen de datos que se va a enlazar al control, puede especificar qué campos del origen de datos se enlazarán a las ListItem.Text propiedades y ListItem.Value de cada elemento del control estableciendo las DataTextField propiedades y DataValueField , respectivamente.