می توانیم فایل XML را به کنترل های انتخابی متصل کنیم.
 
 


فایل XML

 
 
در تکه کد زیر یک فایل XML با نام "countries.xml" را ملاحظه می فرمایید.
 
 

<?xml version="1.0" encoding="ISO-8859-1"?>




 <countries>




 <country>
   <text>Norway</text>
   <value>N</value>
 </country>




 <country>
   <text>Sweden</text>
   <value>S</value>
 </country>




 <country>
   <text>France</text>
   <value>F</value>
 </country>




 <country>
   <text>Italy</text>
   <value>I</value>
 </country>




 </countries>
 
 
فایل countries.xml را ملاحظه فرمایید.
 
 

اتصال یک DataSet به کنترل انتخابی
 
 
ابتدا فضای نام "System.Data" را وارد نمایید. به این فضای نام برای کار با شیء DataSet نیاز داریم. دایرکتیو زیر را به بالای یک صفحه aspx. وارد نمایید.
 
 

<%@ Import Namespace="System.Data" %>
 
 
در مرحله بعد، یک DataSet برای فایل XML ایجاد نمایید و هنگامی که صفحه بارگذاری شد، فایل XML را درون DataSet بارگذاری نمایید.
 
 

<script runat="server">
 sub Page_Load
 if Not Page.IsPostBack then
   dim mycountries=New DataSet
   mycountries.ReadXml(MapPath("countries.xml"))
 end if
 end sub
 
 
برای اتصال یک کنترل RadioButtonList، ابتدا یک کنترل RadioButtonList (بدون استفاده از عنصر asp:ListItem) در یک صفحه aspx. ایجاد فرمایید:
 
 

<html>
 <body>




 <form runat="server">
 <asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" />
 </form>




 </body>
 </html>
 
 
سپس اسکریپتی ایجاد نمایید که XML DataSet را ایجاد می نماید:
 
 

<%@ Import Namespace="System.Data" %>



 <script runat="server">
 sub Page_Load
 if Not Page.IsPostBack then
   dim mycountries=New DataSet
   mycountries.ReadXml(MapPath("countries.xml"))
   rb.DataSource=mycountries
   rb.DataValueField="value"
   rb.DataTextField="text"
   rb.DataBind()
 end if
 end sub
 </script>




 <html>
 <body>




 <form runat="server">
 <asp:RadioButtonList id="rb" runat="server"
 AutoPostBack="True" onSelectedIndexChanged="displayMessage" />
 </form>




 </body>
 </html>
 
 
سپس زیرروالی را به کد اضافه می کنیم تا هنگامی که کاربر روی عنصری در کنترل RadioButtonList کلیک می کند، اجرا شود. هنگامی که دکمه رادیویی کلیک شد، متنی در label ظاهر می شود
 

مثال
 



<%@ Import Namespace="System.Data" %>




 <script runat="server">
 sub Page_Load
 if Not Page.IsPostBack then
   dim mycountries=New DataSet
   mycountries.ReadXml(MapPath("countries.xml"))
   rb.DataSource=mycountries
   rb.DataValueField="value"
   rb.DataTextField="text"
   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>
 

نظر خود را اضافه نمایید

ارسال نظر به عنوان مهمان

0
×