发布网友 发布时间:2022-04-10 09:56
共5个回答
懂视网 时间:2022-04-10 14:17
public static SqlDataReader GetReader(string sql) 2 { 3 SqlConnection conn = new SqlConnection(connString); 4 SqlCommand cmd = new SqlCommand(sql, conn); 5 try 6 { 7 conn.Open(); 8 return cmd.ExecuteReader(CommandBehavior.CloseConnection); 9 } 10 catch (Exception ex) 11 { 12 conn.Close(); 13 //将错误信息写入日志... 14 15 throw ex; 16 } 17 }
封装到集合中:
1 public List<StudentClass> GetAllClasses() 2 { 3 string sql = "select ClassName,ClassId from StudentClass"; 4 SqlDataReader objReader = SQLHelper.GetReader(sql); 5 List<StudentClass> list = new List<StudentClass>(); 6 while (objReader.Read()) 7 { 8 list.Add(new StudentClass() 9 { 10 ClassId = Convert.ToInt32(objReader["ClassId"]), 11 ClassName = objReader["ClassName"].ToString() 12 }); 13 } 14 objReader.Close(); 15 return list; 16 }
然后在窗体初始化方法里面调用并绑定数据:
1 private StudentClassService objClassService = new StudentClassService(); 2 3 public FrmAddStudent() 4 { 5 InitializeComponent(); 6 //初始化班级下拉框 7 this.cboClassName.DataSource = objClassService.GetAllClasses(); 8 this.cboClassName.DisplayMember = "ClassName"; 9 this.cboClassName.ValueMember = "ClassId"; 10 11 }
第二种情况:
SQLHelper类中的代码:
1 public static DataSet GetDataSet(string sql) 2 { 3 SqlConnection conn = new SqlConnection(connString); 4 //SqlCommand cmd = new SqlCommand(sql, conn); 5 SqlDataAdapter da = new SqlDataAdapter(sql, conn); 6 DataSet ds = new DataSet(); 7 da.Fill(ds); 8 return ds; 9 }
然后在窗体初始化方法里面调用并绑定数据:
1 public partial class FrmVoucherQuery : Form 2 { 3 public FrmVoucherQuery() 4 { 5 InitializeComponent(); 6 string sql = string.Format("Select FName From t_VoucherGroup Order by FGroupID"); 7 //控件名.DataSource=数据集.数据表 8 cbVoucherName.DataSource = SQLHelper.GetDataSet(sql).Tables[0]; 9 cbVoucherName.DisplayMember = "FName"; 10 cbVoucherName.ValueMember = "FName"; 11 } 12 }
Winform开发中如何将数据库字段绑定到ComboBox控件
标签:对象 cep ... stat inf form 方法 splay rom
热心网友 时间:2022-04-10 11:25
首先你要有一个datatabel是你从数据库中查出来的,这个没问题吧热心网友 时间:2022-04-10 12:43
1、查询出表中该列的数据,循环绑定到comboBox控件热心网友 时间:2022-04-10 14:18
你可以查出 某一列的 数据。 然后循环add到ComboBox中 。要是还不会 在问我把。追问呵呵~~~还真不会,查询某一列数据:select long_adress from LongAdress追答for(int i=0;i< dt.Columns.Count;i++)
{
ComboBox1.Items.Add((dt.Rows[0]["列名称"]).ToString(););
}
不知道 你返回数据的格式是什么 。 这是datetable 的格式的。
这个我没测试。
就是循环取值,然后把值添加到ComboBox1中items中。就可以了。
热心网友 时间:2022-04-10 16:09
里面有一个Item项,里面使用ADD方法也行,绑定也可以。