作者:pengwei8751150 | 来源:互联网 | 2023-09-25 10:13
DataSetds读取数据第一种方法comboBox1.Items.Insert(0,请选择);第二种方法comboBox1.Items.Add(请选择);comboB
DataSet ds = 读取数据
//第一种方法
//comboBox1.Items.Insert(0,"请选择");
//第二种方法
//comboBox1.Items.Add("请选择");
comboBox1.DataSource = ds.Tables[0];
comboBox1.DisplayMember = "name";
comboBox1.ValueMember = "id";
comboBox1.Items.Insert(0,"请选择");或comboBox1.Items.Add("请选择");放在comboBox1.DataSource = ds.Tables[0];之前没有效果,放在comboBox1.DataSource = ds.Tables[0];之后出现错误:System.ArgumentException: 设置 DataSource 属性后无法修改项集合。
18 个解决方案
有3种办法
1.直接把这个东西放数据库里,一起查出来
2.修改数据源datatable,新增一行
3.不要使用绑定,而是代码增加Item
针对2:
绑定之前
DataRow dr=ds.Tables[0].NewRow();
dr[0]="请选择";
ds.Tables[0].Rows.InsertAt(0,dr);
而且这样不仅会有效率问题,关键是界面会闪烁
仅仅是假死,如果假死0.5秒,大多数用户可能不会发现
而如果是频繁的闪0.5秒,人眼是能看到的
我想想,好像UI会直接阻塞,不会刷新
如果放到线程里才会频闪
推荐修改DataTable数据源(即插入一条你要的提示的数据)后再绑定