HtmlSelect.DataTextField Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit le champ de la source de données à lier à la propriété Text de chaque élément dans le contrôle HtmlSelect.
public:
virtual property System::String ^ DataTextField { System::String ^ get(); void set(System::String ^ value); };
public virtual string DataTextField { get; set; }
member this.DataTextField : string with get, set
Public Overridable Property DataTextField As String
Valeur de propriété
Champ de la source de données à lier à la propriété Text de chaque élément dans le contrôle HtmlSelect. La valeur par défaut est une chaîne vide (""), ce qui signifie que cette propriété n'a pas été définie.
Exemples
L’exemple de code suivant montre comment utiliser les propriétés et spécifier le DataSource champ de la source de données pour établir une liaison à la ListItem.Text propriété de chaque élément du HtmlSelect DataTextField contrôle.
<%@ 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)
{
// Open a connection to the database and run the query.
// Note that the connection string may vary depending on your
// database server settings.
string ConnectString = "server=localhost;database=pubs;integrated security=SSPI";
string QueryString = "select * from authors";
SqlConnection myConnection = new SqlConnection(ConnectString);
SqlDataAdapter myCommand = new SqlDataAdapter(QueryString, myConnection);
// Create a dataset to store the query results.
DataSet ds = new DataSet();
myCommand.Fill(ds, "Authors");
// Bind the HtmlSelect control to the data source.
Select1.DataSource = ds;
Select1.DataTextField = "au_fname";
Select1.DataValueField = "au_fname";
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" %>
<%@ 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">
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
' Open a connection to the database and run the query.
' Note that the connection string may vary depending on your
' database server settings.
Dim ConnectString As String = "server=localhost;database=pubs;integrated security=SSPI"
Dim QueryString As String = "select * from authors"
Dim myConnection As SqlConnection = New SqlConnection(ConnectString)
Dim myCommand As SqlDataAdapter = New SqlDataAdapter(QueryString, myConnection)
' Create a dataset to store the query results.
Dim ds As DataSet = New DataSet()
myCommand.Fill(ds, "Authors")
' Bind the HtmlSelect control to the data source.
Select1.DataSource = ds
Select1.DataTextField = "au_fname"
Select1.DataValueField = "au_fname"
Select1.DataBind()
End If
End Sub
Sub Button_Click (sender As Object, e As EventArgs)
Dim i As Integer
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>
L’exemple de code suivant montre comment utiliser les propriétés et spécifier le DataSourceID champ de la source de données pour établir une liaison à la ListItem.Value propriété de chaque élément du HtmlSelect DataTextField contrôle.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server" language="C#">
void SubmitButton_Click (object sender, System.EventArgs e)
{
// Iterate through the list items in the
// HtmlSelect control to find the selected item.
for (int i = 0; i <= Select1.Items.Count - 1; i++)
{
if (Select1.Items[i].Selected)
// Display the Value property of the selected item.
// This property is populated by the DataValueField property.
Label1.Text = "The Product ID is " + Select1.Items[i].Value;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>HtmlSelect.DataValueField</title>
</head>
<body>
<form id="Form1" runat="server">
<h3> HtmlSelect.DataValueField Example 2</h3>
<p>Select an item from the list:</p>
<select id="Select1"
name="Select1"
datasourceid="SqlDataSource1"
datatextfield="ProductName"
datavaluefield="ProductID"
runat="server">
</select>
<asp:sqldatasource id="SqlDataSource1"
connectionstring="workstation id=localhost;integrated security=SSPI;initial catalog=Northwind"
selectcommand="SELECT * FROM [Products] Where ProductID <= 5"
runat="server">
</asp:sqldatasource>
<asp:button id="SubmitButton"
text="Submit"
onclick="SubmitButton_Click"
runat="Server">
</asp:button>
<br /><br />
<asp:label id="Label1"
runat="Server">
</asp:label>
</form>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server" language="vb">
Sub SubmitButton_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim i As Integer
' Iterate through the list items in the
' HtmlSelect control to find the selected item.
For i = 0 To Select1.Items.Count - 1
If Select1.Items(i).Selected Then
' Display the Value property of the selected item.
' This property is populated by the DataValueField property.
Label1.Text = "The Product ID is " & Select1.Items(i).Value
End If
Next i
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>HtmlSelect.DataValueField</title>
</head>
<body>
<form id="Form1" runat="server">
<h3> HtmlSelect.DataValueField Example 2</h3>
<p>Select an item from the list:</p>
<select id="Select1"
name="Select1"
datasourceid="SqlDataSource1"
datatextfield="ProductName"
datavaluefield="ProductID"
runat="server">
</select>
<asp:sqldatasource id="SqlDataSource1"
connectionstring="workstation id=localhost;integrated security=SSPI;initial catalog=Northwind"
selectcommand="SELECT * FROM [Products] Where ProductID <= 5"
runat="server">
</asp:sqldatasource>
<asp:button id="SubmitButton"
text="Submit"
onclick="SubmitButton_Click"
runat="Server">
</asp:button>
<br /><br />
<asp:label id="Label1"
runat="Server">
</asp:label>
</form>
</body>
</html>
Remarques
Utilisez la propriété pour spécifier le DataTextField champ de la source de données à lier à la ListItem.Text propriété de chaque élément du contrôle. Cette propriété est couramment utilisée pour fournir une valeur pour la ListItem.Text propriété qui diffère de la valeur de la ListItem.Value propriété.
La HtmlSelect classe fournit deux propriétés pour spécifier la source de données à lier. La DataSource propriété vous permet de lier un HtmlSelect contrôle à toute collection qui implémente les interfaces ou les System.Collections.IEnumerable System.ComponentModel.IListSource interfaces (telles que System.Data.DataView, System.Collections.ArrayListou System.Collections.Generic.List<T>). Lorsque vous utilisez la propriété pour spécifier la DataSource source de données, vous devez appeler explicitement la DataBind méthode pour lier le contrôle et sa DataTextField propriété à la source de données.
La DataSourceID propriété vous permet de lier un HtmlSelect contrôle à un contrôle de source de données qui représente une source de données. Lorsque vous utilisez la propriété pour spécifier la DataSourceID source de données, le HtmlSelect contrôle et sa DataTextField propriété sont automatiquement liés au contrôle de source de données spécifié. Par conséquent, vous n’avez pas besoin d’appeler explicitement la DataBind méthode.