Web ページのチュートリアルlogin
Web ページのチュートリアル
著者:php.cn  更新時間:2022-04-11 14:20:28

Web フォームの ArrayList


ASP.NET Web フォーム - ArrayList オブジェクト


ArrayList オブジェクトは、単一のデータ値を含む項目のコレクションです。



試してみる - 例

ArrayList DropDownList

ArrayList RadioButtonList


ArrayList の作成

ArrayList オブジェクトは、単一のデータ値を含む項目のコレクションです。

Add() メソッドを通じて項目を ArrayList に追加します。

次のコードは、mycountries という名前の ArrayList オブジェクトを作成し、4 つの項目を追加します:

<script runat="server">
Sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New ArrayList
mycountries.Add( "ノルウェー")
mycountries.Add("スウェーデン")
mycountries.Add("フランス")
mycountries.Add("イタリア")
end if
end sub
</script>

デフォルトでは、 ArrayList オブジェクトには 16 個の項目が含まれます。 ArrayList は、TrimToSize() メソッドを使用して最終的なサイズに調整できます。

<script runat="server">
Sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New ArrayList
mycountries.Add( "ノルウェー" )
mycountries.Add("スウェーデン")
mycountries.Add("フランス")
mycountries.Add("イタリア")
mycountries.TrimToSize()
end if
end sub
</script>

Sort() メソッドを使用して、ArrayList をアルファベット順または数値順に並べ替えることもできます:

<script runat="server">
Sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New ArrayList
mycountries .Add ("ノルウェー")
mycountries.Add("スウェーデン")
mycountries.Add("フランス")
mycountries.Add("イタリア")
mycountries.TrimToSize()
mycountries.Sort()
end if
end sub
</script>

逆ソートを実現するには、Sort() メソッドの後に Reverse() メソッドを適用してください:

<script runat="server">
Sub Page_Load
if Not Page .IsPostBack then
dim mycountries=New ArrayList
mycountries.Add("ノルウェー")
mycountries.Add("スウェーデン")
mycountries.Add("フランス")
mycountries.Add("イタリア")
mycountries.TrimToSize( )
mycountries.Sort()
mycountries.Reverse()
end if
end sub
</script>


データを ArrayList にバインドします

ArrayList オブジェクトは、次のコントロールのテキストと値を自動的に生成できます:のためにデータを RadioButtonList コントロールに転送するには、まず .aspx ページに RadioButtonList コントロールを作成します (asp:ListItem 要素はなし):

  • <html>
  • <body>
  • <form runat="server" >
  • <asp:RadioButtonList id="rb" runat="server" />
  • </form>
  • </body>
</html>

次に、リストとバインド リスト内の値を RadioButtonList コントロールに設定します:


Instance

<script  runat="server">
Sub Page_Load
if Not Page.IsPostBack then
   dim mycountries=New ArrayList
   mycountries.Add("Norway")
   mycountries.Add("Sweden")
   mycountries.Add("France")
   mycountries.Add("Italy")
   mycountries.TrimToSize()
   mycountries.Sort()
   rb.DataSource=mycountries
   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>

<!DOCTYPE html>
<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>



実行例»
オンライン例を表示するには、[インスタンスの実行] ボタンをクリックしてください

の DataSource プロパティRadioButtonList コントロールはこの ArrayList に設定され、この ArrayList はこの RadioButtonList コントロールのデータ ソースを定義します。 RadioButtonList コントロールの DataBind() メソッドは、RadioButtonList コントロールをデータ ソースにバインドします。

注:
データ値は、コントロールの Text プロパティと Value プロパティとして使用されます。 Text とは異なる値を追加する必要がある場合は、Hashtable オブジェクトまたは SortedList オブジェクトを使用してください。