C# 二级下拉列表框联动(ComboBox)(ExecuteReader)
来源:互联网 发布:sql password函数 编辑:程序博客网 时间:2024/05/22 16:11
using System;using System.Collections.Generic;using System.ComponentModel;using System.Configuration;using System.Data;using System.Data.SqlClient;using System.Drawing;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace _02ProvinceCitySelect{ public partial class MainFrm : Form { public MainFrm() { InitializeComponent(); } private void MainFrm_Load(object sender, EventArgs e) { //加载数据库中的所有的省的数据 string connStr = ConfigurationManager.ConnectionStrings["sqlConn"].ConnectionString; //创建链接对象 using (SqlConnection conn =new SqlConnection(connStr)) { using (SqlCommand cmd =conn.CreateCommand()) { conn.Open();//***********8 cmd.CommandText =@"select AreaId, AreaName, AreaPid from [dbo].[AreaFull] where AreaPId=0"; using (SqlDataReader reader = cmd.ExecuteReader()) { while ( reader.Read()) { //int AreadId = int.Parse(reader["AreaId"].ToString()); //把表格的数据转换成 对象数据 AreaInfo areaInfo = new AreaInfo(); //AreaInfo是自定义的省城市信息类,重写其中的ToString()方法。 areaInfo.AreaId = int.Parse(reader["AreaId"].ToString()); areaInfo.AreaName = reader["AreaName"].ToString(); areaInfo.AreaPId = int.Parse(reader["AreaPId"].ToString()); //把省的信息放到 ComboBox中。ComboBox显示信息是 Item对象的ToString()。下拉列表项本质上是一个对象。 this.cbxProvince.Items.Add(areaInfo); //自动调用areaInfo对象的ToString()方法。自定义类中重写ToString()方法 } }//end useing reader }//end useing cmd }//end using conn this.cbxProvince.SelectedIndex = 0; } private void cbxProvince_SelectedIndexChanged(object sender, EventArgs e) //当第一级下拉列表改变选项时(改变省份) { AreaInfo provinceAreaInfo= this.cbxProvince.SelectedItem as AreaInfo; //下拉列表项本质上是一个对象,转成对象然后取出对象中的Id。根据Id填充第二级下拉列表框的项。 //判断是否 拿到的城市为空 if (provinceAreaInfo == null) { return; } //根据省的Id获取所有的城市信息 //加载数据库中的所有的省的数据 string connStr = ConfigurationManager.ConnectionStrings["sqlConn"].ConnectionString; //创建链接对象 using (SqlConnection conn = new SqlConnection(connStr)) { using (SqlCommand cmd = conn.CreateCommand()) { conn.Open();//***********8 cmd.CommandText = @"select AreaId, AreaName, AreaPid from [dbo].[AreaFull] where AreaPId="+provinceAreaInfo.AreaId; //根据省份的Id查询城市。 using (SqlDataReader reader = cmd.ExecuteReader()) { this.cbxCity.Items.Clear(); while (reader.Read()) { //int AreadId = int.Parse(reader["AreaId"].ToString()); //把表格的数据转换成 对象数据 AreaInfo areaInfo = new AreaInfo(); areaInfo.AreaId = int.Parse(reader["AreaId"].ToString()); areaInfo.AreaName = reader["AreaName"].ToString(); areaInfo.AreaPId = int.Parse(reader["AreaPId"].ToString()); //把省的信息放到 ComboBox中。ComboBox显示信息是 Item对象的ToString() this.cbxCity.Items.Add(areaInfo); } }//end useing reader }//end useing cmd }//en this.cbxCity.SelectedIndex = 0; } private void btbExport_Click(object sender, EventArgs e) { #region 选择保存文件 string fileName = string.Empty;// 保存的文件名 //让用户选择 要保存的文件路径 using (SaveFileDialog sfd = new SaveFileDialog()) { if (sfd.ShowDialog() != DialogResult.OK) { return; } fileName = sfd.FileName; } #endregion // 查询数据,写入数据,写入文本文件 string connStr = ConfigurationManager.ConnectionStrings["sqlConn"].ConnectionString; using (SqlConnection conn =new SqlConnection(connStr)) { using (SqlCommand cmd =conn.CreateCommand()) { conn.Open(); cmd.CommandText = "select AreaId, AreaName, AreaPid from [dbo].[AreaFull]"; using (SqlDataReader reader =cmd.ExecuteReader()) { string tempLine = string.Empty; using (StreamWriter writer =new StreamWriter(fileName)) { while (reader.Read()) { tempLine = reader["AreaId"] + "," + reader["AreaName"] + "," + reader["AreaPId"]; writer.WriteLine(tempLine);//写入文本文件 } } } } } } }}
阅读全文
0 0
- C# 二级下拉列表框联动(ComboBox)(ExecuteReader)
- comboBox二级联动下拉列表
- EXT 二级联动下拉列表
- EXT 二级联动下拉列表
- 下拉列表的二级联动
- 下拉框二级联动
- 另类无刷新、联动下拉列表框(二级+XMLHttpRequest)
- EXT-基础控件 二级联动下拉列表
- Select标签下拉列表二级联动级联
- Android开发实现二级联动下拉列表
- 二级联动下拉列表JS+html实现
- 二级联动下拉列表JS+html实现
- JavaScript下拉列表的二级联动
- Android开发实现二级联动下拉列表
- jquery实现下拉列表二级联动
- 下拉列表二级联动 axure原型
- AJAX之二级联动下拉列表
- extjs combobox下拉框 联动
- 第十一周java作业
- Python入门
- Java实现http(post、get)请求
- HTML + CSS + JQuery实现弹框
- Java遍历JSON
- C# 二级下拉列表框联动(ComboBox)(ExecuteReader)
- 计算广告--技术概览
- 阿里云虚拟化平台携手麦腾举办AI时代的加速核心武器交流会
- 前台发送ajax请求查询信息,并为input输入框赋值
- PHP笔记
- .Net 下载
- ubuntu:一次系统事故及其后续处理经验.
- 理解link以及软链接
- 工业的顶级化发展就是人工智能,人工智能在工业界的落地又如何呢?