亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

DropDownList綁定數據表實現兩級聯動示例

2024-07-10 13:27:21
字體:
來源:轉載
供稿:網友
場景一:平時我們在DropDownList控件下添加下拉選項時,都會使用它的Item.Add方法,直接在代碼下添加。如果我們想添加或修改下拉選項,則必須去修改源代碼。如果幾個DropDownList控件的下拉選項相同,我們則需要重復添加好多次,后期的維護工作很不方便。

場景二:我們在12306網站買票時,肯定遇到過這么一種情景:我們需要先選定目的地的省份,選完省份后在城市選框中會自動加載該省份的城市,實現兩級聯動。

針對以上兩個場景,我們可以用DropDownList直接綁定數據表,根據選擇的省份動態加載該省份下的城市。光說不練,不是好漢,讓我用一個小Demo來大家演示下詳細過程吧。

首先我們需要在數據庫中建立兩個表,一個是Province(省份)表,一個是City(城市)表。建表語句如下:

復制代碼 代碼如下:


Create Table Province
(
ProID int primary key,
ProName varchar(20) not null
)

Create Table City
(
CityID int primary key,
ProID int foreign key references Province(ProID),
CityName varchar(20)
)

Insert into Province values('1','北京')
Insert into Province values('2','河北')
Insert into Province values('3','山東')

insert into City values('1','1','海淀')
insert into City values('2','1','豐臺')
insert into City values('3','1','大興')
insert into City values('4','2','衡水')
insert into City values('5','2','廊坊')
insert into City values('6','2','保定')
insert into City values('7','3','濟南')
insert into City values('8','3','煙臺')
insert into City values('9','3','青島')


通過建表語句我們可以知道,北京下有三個城市--海淀、豐臺、大興,河北下有三個城市--衡水、廊坊、保定,山東有三個城市--濟南、煙臺、青島。

然后我們在Web窗體中放好控件,效果如下圖所示:

DropDownList綁定數據表實現兩級聯動示例

 
dropDownList控件名稱分別為ddlProvince、ddlCity

接著我們在Web后臺代碼中實現功能。我們需要在Web窗體加載時,ddlProvince控件綁定Province表,在ddlProvince下拉選項改變時,ddlCity控件綁定City表。實現代碼如下:

建立數據庫連接類:

復制代碼 代碼如下:


public class DB
{
//連接數據庫的字符串
public static SqlConnection CreateConnection()
{
SqlConnection con = new SqlConnection("Data Source=. ;Initial Catalog=test;uid=sa;pwd=123456;");
return con;
}
}


Web窗體加載時執行代碼:

復制代碼 代碼如下:


protected void Page_Load(object sender, EventArgs e)
{
//如果窗體是第一次加載
if (!this.IsPostBack)
{
//綁定省份
SqlConnection con = DB.CreateConnection();
//打開數據庫連接
con.Open();
SqlCommand cmdProvince = new SqlCommand("select * from Province", con);
SqlDataReader sdrProvince = cmdProvince.ExecuteReader();
//將sdrProvince中的內容綁定到ddlProvince下拉列表中
this.ddlProvince.DataSource = sdrProvince;
//需要顯示的數據表Province中的內容
this.ddlProvince.DataTextField = "ProName";
//需要顯示的數據表Province中的主鍵
this.ddlProvince.DataValueField = "ProID";
this.ddlProvince.DataBind();
sdrProvince.Close();
//關閉數據庫連接
con.Close();
}
}


ddlProvince控件下拉選項改變時執行的代碼:

復制代碼 代碼如下:


protected void ddlProvince_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection con = DB.CreateConnection();
//打開數據庫連接
con.Open();
//綁定城市
SqlCommand cmdCity = new SqlCommand("select * from City where ProID=" + this.ddlProvince.SelectedValue, con);
SqlDataReader sdrCity = cmdCity.ExecuteReader();
//將sdrCity中的內容綁定到ddlCity下拉列表中
this.ddlCity.DataSource = sdrCity;
//需要顯示的數據表City中的內容
this.ddlCity.DataTextField = "CityName";
//需要顯示的數據表City中的主鍵
this.ddlCity.DataValueField = "CityID";
this.ddlCity.DataBind();
sdrCity.Close();
//關閉數據庫連接
con.Close();
}


這樣,我們就用DropDownList動態綁定數據表,實現了根據選擇的省份動態下拉該省份下的城市的功能,達到了面向對象設計中解耦的目的,增強了代碼的可維護性和用戶的體驗度。

希望我的講解能對大家有所幫助。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
在线免费观看羞羞视频一区二区| 久久久久久久久久国产| 久久久精品免费视频| 91在线免费观看网站| www.欧美视频| 亚洲大胆人体视频| 成人国产精品日本在线| 国产精品v片在线观看不卡| 91在线视频精品| 91精品国产综合久久久久久久久| 久久精品中文字幕一区| 成人性生交xxxxx网站| 日韩av在线网址| 久久人人爽人人爽人人片av高请| 成人黄色午夜影院| 亚洲综合中文字幕在线观看| 国产在线a不卡| 亚洲另类激情图| 国产成人精品在线观看| 亚洲一区美女视频在线观看免费| 国产精品video| 亚洲精品一区中文字幕乱码| 日韩欧美主播在线| 精品国产91久久久久久老师| 亚洲精品一区中文| 精品亚洲一区二区三区四区五区| 亚洲人成电影在线观看天堂色| 深夜成人在线观看| 国产精品小说在线| 国产日韩在线视频| 国产精品丝袜久久久久久高清| 亚洲最大av网| 中文字幕日韩电影| 国产精品久久久久久久av电影| 国产精品黄页免费高清在线观看| 成人免费视频网| 精品久久中文字幕| 久久久精品日本| 高清视频欧美一级| 日韩在线免费av| 欧美一级免费视频| 亚洲免费高清视频| 久久国产视频网站| 欧美理论片在线观看| 91在线视频一区| 久久久女女女女999久久| 欧美精品日韩www.p站| 日韩欧美在线字幕| 亚洲欧美中文日韩在线| 亚洲第一精品久久忘忧草社区| 久久久精品999| 国产亚洲欧洲高清| 国产91网红主播在线观看| 久久久久久香蕉网| 国产成人亚洲综合| 久久精品国产清自在天天线| 欧美日韩国产中文字幕| 亚洲三级免费看| 国产视频在线观看一区二区| 日韩av免费一区| 性色av一区二区三区| 成人黄色在线播放| 国产精品www色诱视频| 91av中文字幕| 国产精品高潮呻吟视频| 欧美性猛交xxx| 亚洲第一网站男人都懂| 亚洲国产成人精品电影| 欧美成人亚洲成人日韩成人| 91欧美精品成人综合在线观看| 日韩有码在线观看| 裸体女人亚洲精品一区| 久久精品欧美视频| 精品国产一区二区三区久久狼5月| 久久久免费av| 高清欧美性猛交| 欧美国产乱视频| 98精品在线视频| 性欧美xxxx视频在线观看| 亚洲色图欧美制服丝袜另类第一页| 亚洲精品中文字幕av| 国产一区二区动漫| 91深夜福利视频| 日韩成人在线视频| 亚洲第一偷拍网| 亚洲国产小视频| 欧美成人精品一区二区| 成人免费看吃奶视频网站| 国产ts人妖一区二区三区| 亚洲人成网站777色婷婷| 中文字幕国产日韩| 亚洲第一福利网| 欧美在线观看网站| 欧美一级bbbbb性bbbb喷潮片| 国产不卡av在线免费观看| 神马国产精品影院av| 欧美日韩不卡合集视频| 红桃av永久久久| 欧美一区二三区| 92国产精品久久久久首页| 成人在线一区二区| 91久久精品国产| 在线视频欧美性高潮| 欧美精品免费在线观看| 国产一区二区日韩| 久久久久久久香蕉网| 91精品中文在线| 激情av一区二区| 国产精品久久中文| 91国产在线精品| 黄网动漫久久久| 亚洲老司机av| 一区二区三区久久精品| 亚洲国产天堂久久综合网| 亚洲丁香婷深爱综合| 亚洲爱爱爱爱爱| 91九色视频导航| 在线精品视频视频中文字幕| 91在线中文字幕| 欧美三级欧美成人高清www| 亚洲a∨日韩av高清在线观看| 91精品国产91| 欧美在线免费视频| 最近2019中文字幕大全第二页| 国产欧美精品一区二区| 91久久久亚洲精品| 欧美成人全部免费| 欧美激情女人20p| 欧美午夜女人视频在线| 欧美一级片久久久久久久| 欧美孕妇与黑人孕交| 亚洲国产成人久久综合| 91在线无精精品一区二区| 国产91精品不卡视频| 国产精品亚洲第一区| 国产精品嫩草影院一区二区| 日本成人黄色片| 92版电视剧仙鹤神针在线观看| 久久人人爽国产| 国产香蕉97碰碰久久人人| 国产精品久久久久久久久久久不卡| 精品av在线播放| 超碰日本道色综合久久综合| 亚洲国语精品自产拍在线观看| 亚洲国产欧美一区二区三区同亚洲| 久久久视频在线| 国产精品久久久久久久久久久不卡| 国产一级揄自揄精品视频| 欧美天堂在线观看| 日韩中文字幕网站| 精品久久香蕉国产线看观看亚洲| 国产成人亚洲综合| 91九色视频在线| 国产精品高潮呻吟久久av无限| 8x海外华人永久免费日韩内陆视频| 日韩精品高清在线| 456亚洲影院| 亚洲白虎美女被爆操| 精品香蕉一区二区三区| 尤物yw午夜国产精品视频明星| 国产欧美亚洲精品| 亚洲无av在线中文字幕| 欧美国产乱视频| 成人久久18免费网站图片|