ASCX:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="ProvinceCity.ascx.cs"
Inherits="ProvinceCity" %>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
省份:<asp:DropDownList ID="ddlProvince" Width="60px" AutoPostBack="true" runat="server"
OnSelectedIndexChanged="ddlProvince_SelectedIndexChanged">
</asp:DropDownList>
城市:<asp:DropDownList ID="ddlCity" Width="60px" runat="server">
</asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
CS:
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Collections;
public partial class ProvinceCity : System.Web.UI.UserControl
{
/// <summary>
/// 得到或設(shè)置省份下拉框的值
/// </summary>
public string Province
{
get { return ddlProvince.SelectedValue; }
set { ddlProvince.SelectedValue = value; CreateCityItem(); }
}
/// <summary>
/// 得到或設(shè)置城市下拉框的值
/// </summary>
public string City
{
get { return ddlCity.SelectedValue; }
set { ddlCity.SelectedValue = value; }
}
public void Bind()
{
CreateProvinceItem();
CreateCityItem();
}
/// <summary>
/// 綁定城市的值
/// </summary>
/// <returns></returns>
public void CreateCityItem()
{
ArrayList cityOptions = new ArrayList();
string item = string.Empty;
switch (ddlProvince.SelectedItem.Text)
{
case "安徽":
item = "合肥(*),安慶,蚌埠,亳州,巢湖,滁州,阜陽(yáng),貴池,淮北,淮化,淮南,黃山,九華山,六安,馬鞍山,宿州,銅陵,屯溪,蕪湖,宣城";
break;
case "北京":
item = "東城,西城,崇文,宣武,朝陽(yáng),豐臺(tái),石景山,海淀,門(mén)頭溝,房山,通州,順義,昌平,大興,平谷,懷柔,密云,延慶 ";
break;
case "重慶":
item = "萬(wàn)州,涪陵,渝中,大渡口,江北,沙坪壩,九龍坡,南岸,北碚,萬(wàn)盛,雙撟,渝北,巴南,黔江,長(zhǎng)壽,綦江,潼南,銅梁,大足,榮昌,壁山,梁平,城口,豐都,墊江,武隆,忠縣,開(kāi)縣,云陽(yáng),奉節(jié),巫山,巫溪,石柱,秀山,酉陽(yáng),彭水,江津,合川,永川,南川";
break;
case "福建":
item = "福州(*),福安,龍巖,南平,寧德,莆田,泉州,三明,邵武,石獅,永安,武夷山,廈門(mén),漳州";
break;
case "甘肅":
item = "蘭州(*),白銀,定西,敦煌,甘南,金昌,酒泉,臨夏,平?jīng)?天水,武都,武威,西峰,張掖";
break;
case "廣東":
item = "廣州(*),潮陽(yáng),潮州,澄海,東莞,佛山,河源,惠州,江門(mén),揭陽(yáng),開(kāi)平,茂名,梅州,清遠(yuǎn),汕頭,汕尾,韶關(guān),深圳,順德,陽(yáng)江,英德,云浮,增城,湛江,肇慶,中山,珠海";
break;
case "廣西":
item = "南寧(*),百色,北海,桂林,防城港,河池,賀州,柳州,欽州,梧州,玉林";
break;
case "貴州":
item = "貴陽(yáng)(*),安順,畢節(jié),都勻,凱里,六盤(pán)水,銅仁,興義,玉屏,遵義";
break;
case "海南":
item = "???*),儋縣,陵水,瓊海,三亞,通什,萬(wàn)寧";
break;
case "河北":
item = "石家莊(*),保定,北戴河,滄州,承德,豐潤(rùn),邯鄲,衡水,廊坊,南戴河,秦皇島,唐山,新城,邢臺(tái),張家口";
break;
case "黑龍江":
item = "哈爾濱(*),北安,大慶,大興安嶺,鶴崗,黑河,佳木斯,雞西,牡丹江,齊齊哈爾,七臺(tái)河,雙鴨山,綏化,伊春";
break;
case "河南":
item = "鄭州(*),安陽(yáng),鶴壁,潢川,焦作,濟(jì)源,開(kāi)封,漯河,洛陽(yáng),南陽(yáng),平頂山,濮陽(yáng),三門(mén)峽,商丘,新鄉(xiāng),信陽(yáng),許昌,周口,駐馬店";
break;
case "香港":
item = "香港,九龍,新界";
break;
case "湖北":
item = "武漢(*),恩施,鄂州,黃岡,黃石,荊門(mén),荊州,潛江,十堰,隨州,武穴,仙桃,咸寧,襄陽(yáng),襄樊,孝感,宜昌";
break;
case "湖南":
item = "長(zhǎng)沙(*),常德,郴州,衡陽(yáng),懷化,吉首,婁底,邵陽(yáng),湘潭,益陽(yáng),岳陽(yáng),永州,張家界,株洲";
break;
case "江蘇":
item = "南京(*),常熟,常州,海門(mén),淮安,江都,江陰,昆山,連云港,南通,啟東,沭陽(yáng),宿遷,蘇州,太倉(cāng),泰州,同里,無(wú)錫,徐州,鹽城,揚(yáng)州,宜興,儀征,張家港,鎮(zhèn)江,周莊";
break;
case "江西":
item = "南昌(*),撫州,贛州,吉安,景德鎮(zhèn),井岡山,九江,廬山,萍鄉(xiāng),上饒,新余,宜春,鷹潭";
break;
case "吉林":
item = "長(zhǎng)春(*),白城,白山,琿春,遼源,梅河,吉林,四平,松原,通化,延吉";
break;
case "遼寧":
item = "沈陽(yáng)(*),鞍山,本溪,朝陽(yáng),大連,丹東,撫順,阜新,葫蘆島,錦州,遼陽(yáng),盤(pán)錦,鐵嶺,營(yíng)口";
break;
case "澳門(mén)":
item = "澳門(mén)";
break;
case "內(nèi)蒙古":
item = "呼和浩特(*),阿拉善盟,包頭,赤峰,東勝,海拉爾,集寧,臨河,通遼,烏海,烏蘭浩特,錫林浩特";
break;
case "寧夏":
item = "銀川(*),固源,石嘴山,吳忠";
break;
case "青海":
item = "西寧(*),德令哈,格爾木,共和,海東,海晏,瑪沁,同仁,玉樹(shù)";
break;
case "山東":
item = "濟(jì)南(*),濱州,兗州,德州,東營(yíng),菏澤,濟(jì)寧,萊蕪,聊城,臨沂,蓬萊,青島,曲阜,日照,泰安,濰坊,威海,煙臺(tái),棗莊,淄博";
break;
case "上海":
item = "崇明,黃浦,盧灣,徐匯,長(zhǎng)寧,靜安,普陀,閘北,虹口,楊浦,閔行,寶山,嘉定,浦東,金山,松江,青浦,南匯,奉賢 ";
break;
case "山西":
item = "太原(*),長(zhǎng)治,大同,候馬,晉城,離石,臨汾,寧武,朔州,忻州,陽(yáng)泉,榆次,運(yùn)城";
break;
case "陜西":
item = "西安(*),安康,寶雞,漢中,渭南,商州,綏德,銅川,咸陽(yáng),延安,榆林";
break;
case "四川":
item = "成都(*),巴中,達(dá)川,德陽(yáng),都江堰,峨眉山,涪陵,廣安,廣元,九寨溝,康定,樂(lè)山,瀘州,馬爾康,綿陽(yáng),南充,內(nèi)江,攀枝花,遂寧,汶川,西昌,雅安,宜賓,自貢,資陽(yáng)";
break;
case "臺(tái)灣":
item = "臺(tái)北(*),基隆,臺(tái)南,臺(tái)中,高雄,屏東,南投,云林,新竹,彰化,苗栗,嘉義,花蓮,桃園,宜蘭,臺(tái)東,金門(mén),馬祖,澎湖";
break;
case "天津":
item = "天津(*),和平,東麗,河?xùn)|,西青,河西,津南,南開(kāi),北辰,河北,武清,紅撟,塘沽,漢沽,大港,寧河,靜海,寶坻,薊縣";
break;
case "新疆":
item = "烏魯木齊(*),阿克蘇,阿勒泰,阿圖什,博樂(lè),昌吉,東山,哈密,和田,喀什,克拉瑪依,庫(kù)車(chē),庫(kù)爾勒,奎屯,石河子,塔城,吐魯番,伊寧";
break;
case "西藏":
item = "拉薩(*),阿里,昌都,林芝,那曲,日喀則,山南";
break;
case "云南":
item = "昆明(*),大理,保山,楚雄,東川,個(gè)舊,景洪,開(kāi)遠(yuǎn),臨滄,麗江,六庫(kù),潞西,曲靖,思茅,文山,西雙版納,玉溪,中甸,昭通";
break;
case "浙江":
item = "杭州(*),安吉,慈溪,定海,奉化,海鹽,黃巖,湖州,嘉興,金華,臨安,臨海,麗水,寧波,甌海,平湖,千島湖,衢州,江山,瑞安,紹興,嵊州,臺(tái)州,溫嶺,溫州,余姚,舟山";
break;
case "海外":
item = "歐洲,北美,南美,亞洲,非洲,大洋洲";
break;
default:
item = "";
break;
}
string[] temp = item.Split(',');
ddlCity.Items.Insert(0, "選擇市");
for (int i = ddlCity.Items.Count - 1; i >= 1; i--)
{
ddlCity.Items.RemoveAt(ddlCity.Items.Count - 1);
}
for (int i = 1; i <= temp.Length; i++)
{
ddlCity.Items.Insert(i, temp[i - 1].ToString());
}
}
/// <summary>
/// 綁定省份的值
/// </summary>
/// <returns></returns>
public void CreateProvinceItem()
{
string[] item = "選擇省,北京,上海,重慶,安徽,福建,甘肅,廣東,廣西,貴州,海南,河北,黑龍江,河南,香港,湖北,湖南,江蘇,江西,吉林,遼寧,澳門(mén),內(nèi)蒙古,寧夏,青海,山東,山西,陜西,四川,臺(tái)灣,天津,新疆,西藏,云南,浙江,海外".Split(',');
for (int i = 0; i < item.Length; i++)
{
ddlProvince.Items.Insert(i, item[i].ToString());
}
}
protected void ddlProvince_SelectedIndexChanged(object sender, EventArgs e)
{
CreateCityItem();
}
}