省市联动菜单(ASP.NET + XML)

using  System;
using  System.Collections;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Web;
using  System.Web.SessionState;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.HtmlControls;
using  System.Xml;

namespace  WebApplication2
ExpandedBlockStart.gifContractedBlock.gif
{
ExpandedSubBlockStart.gifContractedSubBlock.gif    
/**//// <summary>
    
/// WebForm1 的摘要说明。
    
/// </summary>

    public class WebForm1 : System.Web.UI.Page
ExpandedSubBlockStart.gifContractedSubBlock.gif    
{
        
protected System.Web.UI.WebControls.DropDownList DropDownListProvince;
        
protected System.Web.UI.WebControls.DropDownList DropDownListCity;
        
protected System.Web.UI.WebControls.Label LabelMessage;

        
public string City = "广州";
        
    
        
private void Page_Load(object sender, System.EventArgs e)
ExpandedSubBlockStart.gifContractedSubBlock.gif        
{
            
// 在此处放置用户代码以初始化页面
            string CurrentPath = this.Server.MapPath(".");

            
if (!Page.IsPostBack)
ExpandedSubBlockStart.gifContractedSubBlock.gif            
{
                
if(System.IO.File.Exists(CurrentPath + "\\Province.xml"))
ExpandedSubBlockStart.gifContractedSubBlock.gif                
{
                    
this.DropDownListProvince.Items.Clear();

                    System.Xml.XmlDocument doc 
= new System.Xml.XmlDocument();
                    doc.Load(CurrentPath 
+ "\\Province.xml");

                    XmlNodeList nodes 
= doc.DocumentElement.ChildNodes;

                    XmlNode node1 
= doc.DocumentElement.SelectSingleNode(@"Province/City[@Name='" + this.City + "']");

                    
foreach(XmlNode node in nodes)
ExpandedSubBlockStart.gifContractedSubBlock.gif                    
{
                        
this.DropDownListProvince.Items.Add(node.Attributes["Name"].Value);
                        
int n = this.DropDownListProvince.Items.Count - 1;
                    
                        
if(node1 != null && node == node1.ParentNode)
                            
this.DropDownListProvince.SelectedIndex = n;
                    }

                    DropDownListProvince_SelectedIndexChanged(sender,e);
                }

                
else
ExpandedSubBlockStart.gifContractedSubBlock.gif                
{
                    
this.LabelMessage.Text = "地市信息文件丢失!";
                }

            }

        }


ExpandedSubBlockStart.gifContractedSubBlock.gif        
Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码
        
override protected void OnInit(EventArgs e)
ExpandedSubBlockStart.gifContractedSubBlock.gif        
{
            
//
            
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
            
//
            InitializeComponent();
            
base.OnInit(e);
        }

        
ExpandedSubBlockStart.gifContractedSubBlock.gif        
/**//// <summary>
        
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
        
/// 此方法的内容。
        
/// </summary>

        private void InitializeComponent()
ExpandedSubBlockStart.gifContractedSubBlock.gif        
{    
            
this.DropDownListProvince.SelectedIndexChanged += new System.EventHandler(this.DropDownListProvince_SelectedIndexChanged);
            
this.Load += new System.EventHandler(this.Page_Load);

        }

        
#endregion


        
private void DropDownListProvince_SelectedIndexChanged(object sender, System.EventArgs e)
ExpandedSubBlockStart.gifContractedSubBlock.gif        
{
            
string CurrentPath = this.Server.MapPath(".");

            
if(System.IO.File.Exists(CurrentPath + "\\Province.xml"))
ExpandedSubBlockStart.gifContractedSubBlock.gif            
{
                
this.DropDownListCity.Items.Clear();

                System.Xml.XmlDocument doc 
= new System.Xml.XmlDocument();
                doc.Load(CurrentPath 
+ "\\Province.xml");

                XmlNodeList nodes 
= doc.DocumentElement.ChildNodes[this.DropDownListProvince.SelectedIndex].ChildNodes;

                
foreach(XmlNode node in nodes)
ExpandedSubBlockStart.gifContractedSubBlock.gif                
{
                    
this.DropDownListCity.Items.Add(node.Attributes["Name"].Value);
                    
int n = this.DropDownListCity.Items.Count - 1;
                    
if(node.Attributes["Name"].Value == this.City)
ExpandedSubBlockStart.gifContractedSubBlock.gif                    
{
                        
this.DropDownListCity.SelectedIndex = n;
                    }

                }


                
if(this.DropDownListCity.SelectedIndex == -1)
                    
this.DropDownListCity.SelectedIndex = 0;
            }

            
else
ExpandedSubBlockStart.gifContractedSubBlock.gif            
{
                
this.LabelMessage.Text = "地市信息文件丢失!";
            }

        }


    }

}


Province.xml 文件: /Files/lmjob/Province.xml
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值