ASP.NET - مجموعهای از Hashtable
- صفحه قبل ArrayList WebForms
- صفحه بعدی SortedList WebForms
مجموعهای از Hashtable شامل پروژههایی است که با استفاده از جفتهای کلید/ارزش نمایش داده میشوند.
ایجاد مجموعهای از Hashtable
مجموعهای از Hashtable شامل پروژههایی است که با استفاده از جفتهای کلید/ارزش نمایش داده میشوند. کلید به عنوان شاخص استفاده میشود و با جستجوی کلید، میتوان به سرعت به ارزش دسترسی داشت.
با استفاده از روش Add() یک پروژه به Hashtable اضافه میکنیم.
کد زیر یک مجموعهای به نام mycountries ایجاد میکند و چهار عنصر به آن اضافه میکند:
<script runat="server"> Sub Page_Load if Not Page.IsPostBack then dim mycountries=New Hashtable mycountries.Add("C","China") mycountries.Add("S","Sweden") mycountries.Add("F","France") mycountries.Add("I","Italy") end if end sub </script>
پیوند داده
مجموعهای از Hashtable میتواند به طور خودکار برای این کنترلها متن و ارزش ایجاد کند:
- asp:RadioButtonList
- asp:CheckBoxList
- asp:DropDownList
- asp:Listbox
برای پیوند دادن داده به یکی از کنترلهای RadioButtonList، ابتدا لطفاً یک کنترل RadioButtonList در یک صفحه .aspx ایجاد کنید (بدون هیچ asp:ListItem عناصر)
<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 Hashtable mycountries.Add("C","China") 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 ظاهر خواهد شد:
<script runat="server"> sub Page_Load if Not Page.IsPostBack then dim mycountries=New Hashtable mycountries.Add("C","China") 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 استفاده کنید.
- صفحه قبل ArrayList WebForms
- صفحه بعدی SortedList WebForms