一. combox显示
- 循环赋值 ,通过combox.Items.Add方法
- 绑定数据,给combox.DataSource绑定数据源
二. 取数据
三.实例
using MySql.Data.MySqlClient; private void Form1_Load(object sender, EventArgs e) { //循环绑定 SetCmbWithCycle(); //绑定数据库 SetCmbWithBindingDB(); //绑定dictionary SetCmbWithDT(); } /// /// 动态获取值 /// /// /// private void timer1_Tick(object sender, EventArgs e) { if (cmbDT.SelectedIndex < 0) { lblError.Text = "combox没有选择值!"; return; } //获取combox值 GetComboxData(); } /// /// 通过循环来赋值 /// private void SetCmbWithCycle() { DataTable dt = GetDbData(); for (int i = 0; i < dt.Rows.Count; i++) { cmbItem.Items.Add(dt.Rows[i]["Name"]); } } /// /// 通过绑定方式来赋值 /// private void SetCmbWithBindingDB() { DataTable dt = GetDbData(); cmbBind.DataSource = dt; cmbBind.DisplayMember = "Name"; } /// /// 通过dictiona绑定 /// private void SetCmbWithDT() { Dictionary dt = new Dictionary (); dt.Add(1, "A"); dt.Add(2, "B"); BindingSource bs = new BindingSource(); bs.DataSource = dt; //Dictionary类型数据不可直接绑定到控件上 cmbDT.DataSource = bs; cmbDT.ValueMember = "Key"; cmbDT.DisplayMember = "Value"; } /// /// 获取combox的属性值 /// private void GetComboxData() { lblSelVal.Text = cmbDT.SelectedValue.ToString(); lblSelItem.Text = cmbDT.SelectedItem.ToString(); lblSelTxt.Text = cmbDT.SelectedText; lblTxt.Text = cmbDT.Text; } /// /// 数据库中获取数据 /// /// private DataTable GetDbData() { string connStr = @"Server=localhost;Database=stu;Uid=root;Pwd="; MySqlConnection conn = new MySqlConnection(connStr); string sql = @"Select *from user"; if (conn.State == ConnectionState.Open) { conn.Close(); } conn.Open(); MySqlCommand cmb = new MySqlCommand(sql, conn); MySqlDataAdapter da = new MySqlDataAdapter(cmb); DataTable dt = new DataTable(); da.Fill(dt); conn.Close(); return dt; }
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/205512.html原文链接:https://javaforall.net
