ComboBox,三级联动菜单,新入门点小白,有些代码有待优化,大神勿喷
//当前窗体的Load事件
private void provinceANDCity_Load(object sender, EventArgs e)
{
//连接字符串
string strConn = "Data Source=.;Initial Catalog=Province;User Id=sa;Pwd=ok";
//connection对象
SqlConnection conn = new SqlConnection(strConn);
//DataSet对象
DataSet ds = new DataSet();
//查询省份语句
string sql = "SELECT * FROM province";
SqlDataAdapter adapter = new SqlDataAdapter(sql,conn);
adapter.Fill(ds,"province");
//将省份的数据绑定到省份的下拉框中
this.cboProvince.DataSource = ds.Tables["province"];
this.cboProvince.ValueMember = "id";
this.cboProvince.DisplayMember = "provinceName"; //获取省份编号
int id = Convert.ToInt32(this.cboProvince.SelectedValue);
//根据省份编号查询城市
sql = "SELECT * FROM City WHERE proId="+id;
adapter = new SqlDataAdapter(sql,conn);
adapter.Fill(ds,"City");
//将查出来的城市绑定在城市下拉框中
this.cboCity.DataSource = ds.Tables["City"];
this.cboCity.ValueMember = "id";
this.cboCity.DisplayMember = "cityName"; //获取城市编号
int cityId = Convert.ToInt32(this.cboCity.SelectedValue);
//根据城市编号查询区县
sql = "SELECT * FROM County WHERE cityId=" + cityId;
adapter = new SqlDataAdapter(sql, conn);
adapter.Fill(ds, "County");
//将查出来的区县绑定在区县下拉框中
this.cboCounty.DataSource = ds.Tables["County"];
this.cboCounty.ValueMember = "id";
this.cboCounty.DisplayMember = "countyName"; }
//省份下拉框的事件
private void cboProvince_SelectionChangeCommitted(object sender, EventArgs e)
{
string strConn = "Data Source=.;Initial Catalog=Province;User Id=sa;Pwd=ok";
SqlConnection conn = new SqlConnection(strConn);
DataSet ds = new DataSet();
//获取省份编号
int id = Convert.ToInt32(this.cboProvince.SelectedValue);
//根据省份编号查询城市
string sql = "SELECT * FROM City WHERE proId="+id;
SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
adapter.Fill(ds, "City");
//将查出来的城市绑定在城市下拉框中
this.cboCity.DataSource = ds.Tables["City"];
this.cboCity.ValueMember = "id";
this.cboCity.DisplayMember = "cityName";
}
//城市下拉框的事件
private void cboCity_SelectionChangeCommitted(object sender, EventArgs e)
{
string strConn = "Data Source=.;Initial Catalog=Province;User Id=sa;Pwd=ok";
SqlConnection conn = new SqlConnection(strConn);
DataSet ds = new DataSet(); //获取城市编号
int cityId = Convert.ToInt32(this.cboCity.SelectedValue);
//根据城市编号查询区县
string sql = "SELECT * FROM County WHERE cityId=" + cityId;
SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
adapter.Fill(ds, "County");
//将查出来的区县绑定在区县下拉框中
this.cboCounty.DataSource = ds.Tables["County"];
this.cboCounty.ValueMember = "id";
this.cboCounty.DisplayMember = "countyName";
}
ComboBox,三级联动菜单,新入门点小白,有些代码有待优化,大神勿喷的更多相关文章
- 二级联动banner【墨芈原创,大神勿喷】
这个banner效果在几个月前都做了,不过因为代码添乱,而且不宜调用就没发布,经过2周时间间间断断的编写,插件终于搞定了,除框架外其它都开源发布,至于框架没给源码是因为还没做好,后期做好了也会发布出来 ...
- 转: javascript实现全国城市三级联动菜单代码
<html> <head> <title>js全国城市三级联动菜单代码_B5教程网</title> <meta http-equiv=" ...
- 基于jQuery的AJAX实现三级联动菜单
最近学习jQuery,所以就写了一个关于中国省市县/区的三级联动菜单,权当相互学习,相互促进,特此记录. 下面是嵌套js的html文件: <!DOCTYPE html> <html ...
- js封装的三级联动菜单(使用时只需要一行js代码)
前言 在实际的项目开发中,我们经常需要三级联动,比如省市区的选择,商品的三级分类的选择等等. 而网上却找不到一个代码完整.功能强大.使用简单的三级联动菜单,大都只是简单的讲了一下实现思路. 下面就给大 ...
- 基于JQ的三级联动菜单选择
<!-- author:青芒 --> <!DOCTYPE html> <html lang="en"> <head> <met ...
- css 实现三级联动菜单
昨天因为项目中想要把二级联动菜单改成三级联动菜单,所以我就单独写了一个tab导航栏,用纯css的方式实现的三级联动.一开始我想着可以用js实现,但是js的hover事件和mouseenter,mous ...
- jQuery实现三级联动菜单(鼠标悬停联动)
效果图: 代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> < ...
- Js三级联动菜单
效果演示: <SCRIPT LANGUAGE="JavaScript"> <!-- function CreateSelect(_FormName,_SName, ...
- 30行代码实现js原生三级联动菜单
var oneArr=[['00','成都'],['01','绵阳'],['02','南充']] var towArr={ '00':[['000','武侯区'],['002','锦江区']], '0 ...
随机推荐
- 解读ASP.NET 5 & MVC6系列(17):MVC中的其他新特性
(GlobalImport全局导入功能) 默认新建立的MVC程序中,在Views目录下,新增加了一个_GlobalImport.cshtml文件和_ViewStart.cshtml平级,该文件的功能类 ...
- 单点登录改进版-使用ajax分发cookie避免重定向轮询
前言 继上一篇博文:可跨域的单点登录(SSO)实现方案[附.net代码]虽然实现了单点登录,也存在很多不合理的地方.很多热心的朋友也给出了很多指导性的意见,特别是 LoveCoder提出的意见. 在很 ...
- hihocoder-1142-三分求极值
Hihocoder-1142 : 三分·三分求极值 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 这一次我们就简单一点了,题目在此: 在直角坐标系中有一条抛物线y=ax ...
- Android开发之带你轻松集成友盟统计
友盟统计是什么呢?为什么要集成他呢? 当我们需要获取自己写的软件的装机量和用户使用信息时,这时我们可以集成友盟统计. 首先到友盟统计中注册账号什么的就不废话了,直接看创建项目: 在个人中心中的管理里面 ...
- 使用 Docker 编译 OpenWRT(Widora)
Docker 是一种新的被称之为容器的虚拟机.本文将使用此工具,进行 OpenWRT 的编译. 在 Docker 中下载 Ubuntu 14.04 的镜像 使用以下命令可以十分方便的从远程服务器上将 ...
- go channel
channel 是go语言中不同goroutine之间通信一种方法 //定义一个channel c := make(chan bool) //向channel中写入 c <- true //读取 ...
- 【原】iOS 同时重写setter和getter时候报错:Use of undeclared identifier '_name';did you mean 'name'
写了那么多的代码了,平时也没有怎么注意会报这个错误,因为平时都很少同时重写setter和getter方法,一般的话,我们大概都是使用懒加载方法,然后重写getter方法,做一个非空判断.然后有时候根据 ...
- 红米3 SM71.1(android-7.1.1_r6)更新发布20161229年末增强版
一.写在前面 我只是个人爱好,本ROM未集成任何第三方推广软件,我只是喜欢把好的资源分享出来,若可以,我们一起学习,一起进步. 请不要问我怎么刷机! 请不要问我玩游戏卡不卡(有钱你就换好点的手机)! ...
- 【Codeforces235C】Cyclical Quest 后缀自动机
C. Cyclical Quest time limit per test:3 seconds memory limit per test:512 megabytes input:standard i ...
- 【原】作为前端需要了解的B/S架构
其实B/S架构是属于后台方面的东西,不过作为一个前端,也是需要了解一下滴 C/S架构简要介绍 在了解什么是B/S架构之前,我们有必要了解一下什么是C/S架构: C/S架构是第一种比较早的软件架构,主要 ...