ASP.NET - مجموعه‌ای از Hashtable

مجموعه‌ای از 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 استفاده کنید.