ASP.NET - فایل XML
- صفحه قبلی SortedList WebForms
- صفحه بعدی Repeater WebForms
ما میتوانیم فایل XML را به کنترل لیست پیوند دهیم.
مثال
یک فایل XML
یک فایل XML به نام "countries.xml" وجود دارد:
<?xml version="1.0" encoding="ISO-8859-1"?> <countries> <country> <text>China</text> <value>C</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 به کنترل List
ابتدا نام فضای "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
برای پیوند دادن این DataSet به کنترل RadioButtonList، ابتدا یک کنترل RadioButtonList در صفحه .aspx ایجاد کنید (بدون هیچ asp:ListItem):
<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>
- صفحه قبلی SortedList WebForms
- صفحه بعدی Repeater WebForms