借用DataSet将XML读取到DropDownList

实现原理很简单:先将XML中的内容填充到DataSet虚拟表中,然后把DropDownList和虚拟表绑定即可。

city.xml:
<?xml version="1.0" encoding="utf-8" ?>
<xml>
  <city value="1">广东</city>
  <city value="2">广西</city>
  <city value="3">湖北</city>
  <city value="4">湖南</city>
  <city value="5">河北</city>
  <city value="6">河南</city>
  <city value="7">山东</city>
  <city value="8">山西</city>
  <city value="9">新疆</city>
  <city value="10">浙江</city>
  <city value="11">江西</city>
  <city value="12">江苏</city>
  <city value="13">宁夏</city>
  <city value="14">辽宁</city>
  <city value="15">青海</city>
  <city value="16">陕西</city>
  <city value="17">甘肃</city>
  <city value="18">云南</city>
  <city value="19">贵州</city>
  <city value="20">西藏</city>
  <city value="21">四川</city>
  <city value="22">北京</city>
  <city value="23">上海</city>
  <city value="24">天津</city>
  <city value="25">台湾</city>
  <city value="26">海南</city>
  <city value="27">福建</city>
  <city value="28">吉林</city>
  <city value="29">安徽</city>
  <city value="30">重庆</city>
  <city value="31">香港</city>
  <city value="32">澳门</city>
  <city value="33">黑龙江</city>
  <city value="34">内蒙古</city>
</xml>

Default.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>借用DataSet将XML读取到DropDownList-Mzwu.Com</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:DropDownList ID="DropDownList1" runat="server">
        </asp:DropDownList>
    </div>
    </form>
</body>
</html>

Default.aspx.cs:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        DataSet ds = new DataSet();
        ds.ReadXml(Server.MapPath("city.xml"));

        DropDownList1.DataTextField = "city_text";
        DropDownList1.DataValueField = "value";
        DropDownList1.DataSource = ds.Tables[0].DefaultView;
        DropDownList1.DataBind();
    }
}


评论: 0 | 引用: 0 | 查看次数: 3736
发表评论
登录后再发表评论!