手机版

DropDownList绑定数据表的两级联动示例

时间:2021-11-09 来源:互联网 编辑:宝哥软件园 浏览:

场景1:当我们在DropDownList控件下添加下拉选项时,我们总是使用它的Item。添加方法,并将它们直接添加到代码下面。如果我们想添加或修改下拉选项,我们必须修改源代码。如果几个DropDownList控件的下拉选项相同,我们需要多次添加,后期维护非常不方便。场景二:我们在12306网站买票的时候,一定遇到过这样的场景:我们需要先选择目的地省份,选择省份后,省内的城市会自动加载到城市选择框中,实现两级联动。对于以上两种场景,我们可以直接用DropDownList绑定数据表,动态加载所选省份下的城市。说话不练不是英雄。让我用一个小演示来演示详细的过程。首先,我们需要在数据库中建立两个表,一个是省表,另一个是市表。做了以下表语句:复制代码如下:创建表省(proid int主键,provname varchar (20)不为null)创建表城市(cityid int主键,proid int外键引用省(Proid),cityname varchar (20))插入省值(' 1 ','北京')插入省值(' 2 ','河北')插入省值(' 3 ','山东')插入市值(' 1 ','海淀')插入市值(' 2 ',' 1 ','丰台')插入市值1 ','大兴')插入City值(' 4 ',' 2 ','衡水')插入City值(' 5 ',' 2 ','廊坊')插入City值(' 6 ',' 2 ','保定')插入City值(' 7 ',' 3 ','济南')插入City值(' 8 ',' 3 ','烟台')插入City值(' 9 ',' 3 ','青岛')通过表建的语句我们可以知道北京下面有三个城市。 然后我们把控件放到Web表单中,效果如下图所示:

dropDownList控件名称分别为ddlProvince、ddlCity接着我们在网后台代码中实现功能。我们需要在网窗体加载时,DDL普罗维登斯控件绑定省表,在普罗维登斯下拉选项改变时,ddlCity控件绑定城市表。实现代码如下:建立数据库连接类:复制代码代码如下:公共类DB { //连接数据库的字符串公共静态SqlConnection创建连接(){ SqlConnection con=new SqlConnection('数据源=。初始目录=测试;uid=sa ' pwd=123456 ');返回con} }网站窗体加载时执行代码:复制代码代码如下:受保护的无效页面_加载(对象发送方,EventArgs e) { //如果窗体是第一次加载if(!这个. IsPostBack) { //绑定省份SqlConnection con=DB .创建连接();//打开数据库连接con . Open();SqlCommand cmd providence=new SqlCommand('从省中选择*,con);SqlDataReader SDR车辆=cmd providence .ExecuteReader();//将特别提款权省份中的内容绑定到普罗维登斯下拉列表中这个。DDL普罗维登斯。数据源=软件无线电省份;//需要显示的数据表省中的内容这个。DDL普罗维登斯。datatextfield=' ProName//需要显示的数据表省中的主键这个。DDL普罗维登斯。DataValueField=' ProID这个。DDL普罗维登斯。DataBind();特别提款权省份close();//关闭数据库连接con . Close();} } ddlProvince控件下拉选项改变时执行的代码:复制代码代码如下:受保护的void DDL providence _ SelectedIndexChanged(对象发送方,事件参数e){ SqlConnection con=DB .创建连接();//打开数据库连接con . Open();//绑定城市SqlCommand cmd city=new SqlCommand('从城市中选择*其中ProID='这个。ddlprovice。选定值,con);SqlDataReader sdrCity=cmdCity .ExecuteReader();//将sdrCity中的内容绑定到ddlCity下拉列表中这个。ddlcity。数据来源=SDR城市;//需要显示的数据表城市中的内容这个。ddlcity。datatextfield='城市名称';//需要显示的数据表城市中的主键这个。ddlcity。datavaluefield=' city id这个。ddlcity。databind();sdrCity .close();//关闭数据库连接con . Close();} 这样,我们就用DropDownList动态绑定数据表,实现了根据选择的省份动态下拉该省份下的城市的功能,达到了面向对象设计中解耦的目的,增强了代码的可维护性和用户的体验度。希望我的讲解能对大家有所帮助。

版权声明:DropDownList绑定数据表的两级联动示例是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。