HtmlSelect.DataMember プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
複数のデータ セットを持つ 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 持つオブジェクトがある場合は、このプロパティを使用して、コントロールにバインドするテーブルを指定します。
コントロールにバインドするデータ ソースを指定したら、 プロパティと DataValueField プロパティをそれぞれ設定することで、コントロール内の各項目の プロパティと ListItem.Value プロパティにバインドするListItem.Textデータ ソースのフィールドをDataTextField指定できます。
適用対象
こちらもご覧ください
.NET