c# XML省市联动

Posted 忧郁的小学生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# XML省市联动相关的知识,希望对你有一定的参考价值。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.IO;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        List<string> sheng = new List<string>();
        List<string> shi = new List<string>();
        List<string> qua = new List<string>();
        private void Form1_Load(object sender, EventArgs e)
        {
            XmlDocument doc = new XmlDocument();
            doc.Load("Provinces.xml");
            comboBox1.Items.Clear();
            sheng.Clear();
            XmlNodeList nodelist = doc.SelectNodes("/Provinces/Province");
         
            foreach (XmlNode item in nodelist)
            {

                comboBox1.Items.Add(item.Attributes["ProvinceName"].Value);
                sheng.Add(item.Attributes["ID"].Value);
                
            }
            comboBox1.SelectedIndex = 0;
           
        }

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            XmlDocument xm = new XmlDocument();
            xm.Load("Cities.xml");
            shi.Clear();
            comboBox2.Items.Clear();
            string cid = sheng[comboBox1.SelectedIndex];
            XmlNodeList citys = xm.SelectNodes("/Cities/City[@PID="+cid+"]");
            
            foreach (XmlNode item in citys) 
            {
             
                    comboBox2.Items.Add(item.Attributes["CityName"].Value);
                    shi.Add(item.Attributes["ID"].Value);
                
            }
            comboBox2.SelectedIndex = 0;
        }

        private void comboBox3_SelectedIndexChanged(object sender, EventArgs e)
        {
           

        }

        private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
        {
            XmlDocument qu = new XmlDocument();
            qu.Load("Districts.xml");
            qua.Clear();
            comboBox3.Items.Clear();
            string qid = shi[comboBox2.SelectedIndex];
            XmlNodeList qux = qu.SelectNodes("/Districts/District[@CID=" + qid + "]");
            foreach (XmlNode item in qux)
            {
                comboBox3.Items.Add(item.Attributes["DistrictName"].Value);
                qua.Add(item.Attributes["ID"].Value);
            }
            comboBox3.SelectedIndex = 0;
        }
    }
}

  

以上是关于c# XML省市联动的主要内容,如果未能解决你的问题,请参考以下文章

c# 做省市县联动

C#中Windows设计窗怎么实现单选框和省市下拉框联动?

省市级三级联动

省市区三级联动

jquery解析XML文件实现的省市联动

省市联动-获取资源文件xml 获取nodes的方法要学会