HtmlSelect.DataSource プロパティ
HtmlSelect コントロールにバインドする情報のソースを取得または設定します。
名前空間: System.Web.UI.HtmlControls
アセンブリ: System.Web (system.web.dll 内)
構文
'宣言
Public Overridable Property DataSource As Object
'使用
Dim instance As HtmlSelect
Dim value As Object
value = instance.DataSource
instance.DataSource = value
public virtual Object DataSource { get; set; }
public:
virtual property Object^ DataSource {
Object^ get ();
void set (Object^ value);
}
/** @property */
public Object get_DataSource ()
/** @property */
public void set_DataSource (Object value)
public function get DataSource () : Object
public function set DataSource (value : Object)
適用できません。
プロパティ値
このコントロールにデータを提供するために使用する値のコレクションを格納している IEnumerable または IListSource。既定値は null 参照 (Visual Basic では Nothing) です。
例外
例外の種類 | 条件 |
---|---|
指定したデータ ソースが System.Collections.IEnumerable または System.ComponentModel.IListSource と互換性がなく、null 参照 (Visual Basic では Nothing) でもありません。 |
|
DataSource プロパティと DataSourceID プロパティの両方に値が指定されているため、データ ソースを解決できません。 |
解説
DataSource プロパティを使用して、HtmlSelect コントロールにバインドするデータ ソースを指定します。データ ソースは、System.Collections.IEnumerable インターフェイス (System.Data.DataView、System.Collections.ArrayList、System.Collections.Hashtable など) または IListSource インターフェイスを実装するオブジェクトである必要があります。DataSource プロパティを設定する場合は、データ バインディングを実行するコードを手動で記述する必要があります。
複数のテーブルを持つ System.Data.DataSet オブジェクトなどの複数のデータ セットがデータ ソースに格納されている場合は、DataMember プロパティを使用してコントロールにバインドするデータ セットを指定します。
コントロール内の各項目の ListItem.Text プロパティと ListItem.Value プロパティにデータ ソースのどのフィールドをバインドするかは、DataTextField プロパティと DataValueField プロパティを個別に設定することで指定できます。
また、DataSourceID プロパティを使用して、データ ソース コントロールで表されたデータ ソースへのバインディングを自動的に行うことができます。DataSourceID プロパティを設定すると、データ リスト コントロールは、指定したデータ ソース コントロールに自動的にバインドされます。DataBind メソッドを明示的に呼び出すコードを記述する必要はありません。
DataSource プロパティと DataSourceID プロパティの両方に値を指定した場合、ASP.NET はデータ ソースを解決できず、System.Web.HttpException 例外がスローされます。
使用例
DataSource プロパティを使用して、HtmlSelect コントロールにバインドする情報のソースを指定する方法を次のコード例に示します。
<%@ 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>
<%@ 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>
プラットフォーム
Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition
Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。
バージョン情報
.NET Framework
サポート対象 : 3.0,2.0,1.1,1.0
参照
関連項目
HtmlSelect クラス
HtmlSelect メンバ
System.Web.UI.HtmlControls 名前空間
HtmlSelect.DataMember プロパティ
System.Data.DataSet
DataTextField
ListItem.Text
DataValueField
ListItem.Value
DataSourceID