ASP.NET Web フォーム - ハッシュテーブル オブジェクト
このセクションでは、ASP.NETHashtable オブジェクトを使用してデータをバインドするプロセスについて説明します。
Hashtable オブジェクトには、キーと値のペアで表される項目が含まれます。
ハッシュテーブルのラジオボタンリスト 1
ハッシュテーブルのラジオボタンリスト 2
ハッシュテーブルのドロップダウンリスト
Hashtable オブジェクトには、キーと値のペアで表される項目が含まれます。キーはインデックスとして使用され、キーを検索することで値を素早く検索することができます。
Add() メソッドを通じてハッシュテーブルに項目を追加します。
次のコードは、mycountries という名前の Hashtable オブジェクトを作成し、4 つの要素を追加します。
<script runat="server">Sub Page_Loadif Not Page.IsPostBack thendim mycountries=New Hashtablemycountries.Add("N","ノルウェー")mycountries.Add("S","スウェーデン")mycountries.Add("F", "フランス")mycountries.Add("I","イタリア")end ifend sub</script>
ハッシュテーブル オブジェクトは、次のコントロールのテキストと値を自動的に生成します。
asp:ラジオボタンリスト
asp:チェックボックスリスト
asp:ドロップダウンリスト
asp:リストボックス
データを RadioButtonList コントロールにバインドするには、まず .aspx ページに RadioButtonList コントロールを作成します (asp:ListItem 要素なし)。
<html><body><form runat="server"><asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" /></form></body></html>
次に、リストを作成するスクリプトを追加し、リスト内の値を RadioButtonList コントロールにバインドします。
<script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New Hashtablemycountries.Add("N","ノルウェー")mycountries.Add("S","スウェーデン")mycountries.Add("F","フランス")mycountries.Add("I","イタリア")rb。 DataSource=mycountriesrb.DataValueField="Key"rb.DataTextField="Value"rb.DataBind()end ifend sub</script><html><body><form runat="server"><asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" /></form></body></ html>
次に、ユーザーが RadioButtonList コントロール内の項目をクリックしたときに実行されるサブルーチンを追加します。ラジオ ボタンをクリックすると、ラベルにテキスト行が表示されます。
<script runat="server">sub Page_Loadif Not Page.IsPostBack thendim mycountries=New Hashtablemycountries.Add("N","ノルウェー")mycountries.Add("S","スウェーデン")mycountries.Add("F","フランス")mycountries.Add("I","イタリア")rb。 DataSource=mycountriesrb.DataValueField="Key"rb.DataTextField="Value"rb.DataBind()end ifend subsub displayMessage(s) as Object,e As EventArgs)lbl1.text="あなたの好きな国は次のとおりです: " & rb.SelectedItem.Textend sub</script><html><body><form runat="server"><asp:RadioButtonList id=" rb" runat="server"AutoPostBack="True" onSelectedIndexChanged="displayMessage" /><p><asp:label id="lbl1" runat="server" /></p></form></body></html>
注:ハッシュテーブルに追加されたアイテムの並べ替え方法を選択することはできません。項目をアルファベット順または数値順に並べ替えるには、SortedList オブジェクトを使用します。