آموزش WebForm-شیء Hashtable
شیء HashTable حاوی آیتم هایی به صورت Key/Value می باشد.
ایجاد یک Hashtable
شیء HashTable حاوی آیتم هایی به صورت Key/Value می باشد.
کلیدها به عنوان اندیس استفاده می شوند، و جستجوی خیلی سریعی روی مقادیر می تواند از طریق جستجوی کلیدها انجام شود.
آیتم ها با استفاده از متد ()ADD به Hashtable اضافه می گردند.
کد زیر یک HashTable با نام mycountries ایجاد می کند و چهار عنصر به آن اضافه می کند:
Sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New Hashtable
mycountries.Add("N","Norway")
mycountries.Add("S","Sweden")
mycountries.Add("F","France")
mycountries.Add("I","Italy")
end if
end sub
</script>
Data Binding
شیء Hashtable ممکن است به صورت اتوماتیک، متن و مقادیر را برای کنترل های زیر ایجاد کند:
- asp:RadioButtonList
- asp:CheckBoxList
- asp:DropDownList
- asp:Listbox
برای اتصال یک کنترل RadioButtonList، ابتدا یک کنترل RadioButtonList (بدون استفاده از عنصر asp:ListItem) در یک صفحه aspx. ایجاد فرمایید:
<body>
<form runat="server">
<asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" />
</form>
</body>
</html>
سپس اسکریپتی ایجاد نمایید که لیست را ایجاد می نماید:
sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New Hashtable
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 کلیک می کند، اجرا شود. هنگامی که دکمه رادیویی کلیک شد، متنی در label ظاهر می شود:
مثال (آموزش WebForm-شیء Hashtable)
sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New Hashtable
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>
خروجی کد بالا:
نکته: شما نمی توانید عناصری که به یک Hashtable اضافه شده است را مرتب کنید. برای مرتب سازی عناصر از روی حروف الفبا یا بر اساس عدد، از SortedList استفاده نمایید.
- نوشته شده توسط مظاهر نصوحی
- بازدید: 11227