中国省-市-县级联

来源:互联网 发布:表示公司的顶级域名 编辑:程序博客网 时间:2024/04/30 21:34

 

  背景:

  在学习ASP.net的时候讲到一个控件—DropDownList(表示允许用户从下拉框中选择一项的控件)。视屏中是中国省,市的级联,不过只是一小部分。自己脑子一热,索性把中国所有的省、市、县的全做了,以后用着方便。

   步骤:

   1、准备数据库

   把中国所有的省、市、县录入数据库。当然自己没有那么勤快了,我是从网上下载的。下载:点我!  访问密码 b48f

   2、设置控件

   在web窗体上拖拉三个DropDownList,并把放置省和市 的DropDownList控件的AutoPostBack 设置成True。

   3、编写代码

/* ==============================** Author: 殷伟涛* Time:2015/7/20 9:53:55* FileName:DB* ProjectName:$projectname$* ===============================*/using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Data.SqlClient ;namespace 中国省市县级联{    public class DB    {        public static SqlConnection createConnection()        {            SqlConnection db = new SqlConnection("server=.;database=Chain;uid=sa;pwd=123456;");            return db;        }    }    }

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Data.SqlClient;namespace 中国省市县级联{    public partial class China : System.Web.UI.Page    {        protected void Page_Load(object sender, EventArgs e)        {            if (!this.IsPostBack)            {                                //绑定省                SqlConnection con = DB.createConnection();                con.Open();                SqlCommand cmdProvince = new SqlCommand("select * from S_Province", con);                SqlDataReader sdrone = cmdProvince.ExecuteReader();                this.ddlProvince.DataSource = sdrone;                this.ddlProvince.DataTextField = "ProvinceName";                this.ddlProvince.DataValueField = "ProvinceID";                this.ddlProvince.DataBind();                sdrone.Close();                //绑定市                SqlCommand cmdcity = new SqlCommand("select * from S_City where ProvinceID =" + this.ddlProvince.SelectedValue, con);                SqlDataReader sdrtwo = cmdcity.ExecuteReader();                this.ddlCity.DataSource = sdrtwo;                this.ddlCity.DataTextField = "CityName";                this.ddlCity.DataValueField = "CityID";                this.ddlCity.DataBind();                sdrtwo.Close();                //绑定县                SqlCommand cmdDistrict = new SqlCommand("select * from S_District where CityID=" + this.ddlCity.SelectedValue, con);                SqlDataReader sdrthree = cmdDistrict.ExecuteReader();                this.ddlDistrict.DataSource = sdrthree;                this.ddlDistrict.DataTextField = "DistrictName";                this.ddlDistrict.DataValueField = "DistrictID";                this.ddlDistrict.DataBind();                sdrthree.Close();            }        }        /// <summary>        /// 对ddlProvince 的操作时时更新数据库,ddlCtiy 也跟着更新        /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        protected void ddlProvince_SelectedIndexChanged(object sender, EventArgs e)        {               SqlConnection con = DB.createConnection();            con.Open();            SqlCommand cmdcity = new SqlCommand("select * from S_City where ProvinceID =" + this.ddlProvince.SelectedValue, con);            SqlDataReader sdrtwo = cmdcity.ExecuteReader();            this.ddlCity.DataSource = sdrtwo;            this.ddlCity.DataTextField = "CityName";            this.ddlCity.DataValueField = "CityID";            this.ddlCity.DataBind();            sdrtwo.Close();        }       /// <summary>        ///  对ddlCity 的操作时时更新数据库,ddlDistrict 也跟着更新       /// </summary>       /// <param name="sender"></param>       /// <param name="e"></param>        protected void ddlCity_SelectedIndexChanged(object sender, EventArgs e)        {            SqlConnection con = DB.createConnection();            con.Open();            SqlCommand cmdDistrict = new SqlCommand("select * from S_District where CityID=" + this.ddlCity.SelectedValue, con);            SqlDataReader sdrthree = cmdDistrict.ExecuteReader();            this.ddlDistrict.DataSource = sdrthree;            this.ddlDistrict.DataTextField = "DistrictName";            this.ddlDistrict.DataValueField = "DistrictID";            this.ddlDistrict.DataBind();            sdrthree.Close();        }          }}

      

     


   总结:在看牛腩新闻发布系统时候,发现马老师把一些常有的技术都写在博客中用的时候直接找博客,非常省事啊!所以像老师学习,提高自己的工作效率!

0 0
原创粉丝点击