SortedListのオブジェクトは、ArrayListオブジェクトとHashtableオブジェクトの両方の機能を兼ね備えています。
例
SortedListのオブジェクト
SortedListのオブジェクトは、キー/値ペア内の項目が含まれています。
SortedListのオブジェクトは自動的にアルファベットや数字の順に項目を並べ替えます。
アイテムはとSortedListのに追加されたAdd()メソッド。
SortedListのは、との最終的なサイズに大きさにすることができるTrimToSize()メソッド。
次のコードは、SortedListの名前のmycountriesを作成し、4つの要素が追加されます。
<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New SortedList
mycountries.Add("N","Norway")
mycountries.Add("S","Sweden")
mycountries.Add("F","France")
mycountries.Add("I","Italy")
end if
end sub
</script>
データバインディング
SortedListのオブジェクトは、自動的に次のコントロールにテキストと値を生成することがあります。
- ASP:RadioButtonListの
- ASP:CheckBoxListの
- ASP:DropDownListコントロール
- ASP:リストボックス
.aspxページで:RadioButtonListコントロールにデータをバインドするには、最初の(リストアイテムエレメント任意のASPせず)RadioButtonListコントロールを作成します。
<html>
<body>
<form runat="server">
<asp:RadioButtonList id="rb" runat="server"
AutoPostBack="True" />
</form>
</body>
</html>
次に、リストを作成し、スクリプトを追加します。
<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New SortedList
mycountries.Add("N","Norway")
mycountries.Add("S","Sweden")
mycountries.Add("F","France")
mycountries.Add("I","Italy")
rb.DataSource=mycountries
rb.DataValueField="Key"
rb.DataTextField="Value"
rb.DataBind()
end if
end sub
</script>
<html>
<body>
<form runat="server">
<asp:RadioButtonList id="rb" runat="server"
AutoPostBack="True" />
</form>
</body>
</html>
その後、我々は、ユーザがRadioButtonListコントロールの項目をクリックしたときに実行されるサブルーチンを追加します。 ラジオボタンをクリックすると、テキストがラベルに表示されます。
例
<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New SortedList
mycountries.Add("N","Norway")
mycountries.Add("S","Sweden")
mycountries.Add("F","France")
mycountries.Add("I","Italy")
rb.DataSource=mycountries
rb.DataValueField="Key"
rb.DataTextField="Value"
rb.DataBind()
end if
end sub
sub displayMessage(s as Object,e As EventArgs)
lbl1.text="Your favorite country is: " & rb.SelectedItem.Text
end 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>
»例を表示