DropDownList繫結資料表實現兩級聯動

2021-06-20 21:56:09 字數 1887 閱讀 1377

場景一:平時我們在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窗體中放好控制項,效果如下圖所示:

接著我們在web後台**中實現功能。我們需要在web窗體載入時,ddlprovince控制項繫結province表,在ddlprovince下拉選項改變時,ddlcity控制項繫結city表。實現**如下:

建立資料庫連線類:

public class db

}

web窗體載入時執行**:
protected void page_load(object sender, eventargs e)

}

ddlprovince控制項下拉選項改變時執行的**:
protected void ddlprovince_selectedindexchanged(object sender, eventargs e)

這樣,我們就用dropdownlist動態繫結資料表,實現了根據選擇的省份動態下拉該省份下的城市的功能,達到了物件導向設計中解耦的目的,增強了**的可維護性和使用者的體驗度。

希望我的講解能對大家有所幫助。

dropdownlist資料繫結

在web.config配置檔案連線資料庫 新建乙個 sqlhelp 類 string scon system.configuration.configurationmanager.connectionstrings scon connectionstring 執行查詢的方法返回的是乙個dataset...

DropDownList繫結系統顏色

昨天晚上看到 http www.cnblogs.com overred archive 2006 03 24 357833.html的效果,感覺挺好看的.我結合列舉做了一下.可以顯示系統的全部顏色.看看 繫結字型 26system.drawing.text.installedfontcollecti...

DropDownList的繫結方法

方法1 如果是固定的繫結,則直接在ddl下設定value值和text值即可繫結 方法2 如果是動態繫結,則需要取得名稱和value值後再與ddl繫結 例子 protected void bind string id dictionary dictionary new dictionary 某個類物件...