111,027
社区成员
发帖
与我相关
我的任务
分享
DataSet ds = 读取数据
//第一种方法
//comboBox1.Items.Insert(0,"请选择");
//第二种方法
//comboBox1.Items.Add("请选择");
comboBox1.DataSource = ds.Tables[0];
comboBox1.DisplayMember = "name";
comboBox1.ValueMember = "id";
DataSet ds = 读取数据
ArrayList mylist = new ArrayList();
mylist.Add(new DictionaryEntry("0", "请选择"));
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
mylist.Add(new DictionaryEntry(ds.Tables[0].Rows[i]["id"], ds.Tables[0].Rows[i]["name"]));
}
this.comboBox1.DataSource = mylist;
this.comboBox1.DisplayMember = "Value";
this.comboBox1.ValueMember = "Key";
List<object> items=new List<object>();
comboBox1.Items.AddRange(items.ToArray());
可以吗?
DataSet ds = 读取数据
comboBox1.Items.Clear();
comboBox1.Items.Add("请选择");
foreach (DataRow row in ds.Tables[0].Rows)
{
comboBox1.Items.Add(row["id"].ToString(),row["name"].ToString());
}
[/quote]
如果数据很多的话,你遍历表去操作Items,难道效率问题不是更大吗?
要知道,绑定控件只刷新一次,而你每插入一个Item,combobox就刷新一次,界面重绘可比索引重建要慢的多了[/quote]
这个每插入一个项就要刷新一次吗?这个是Winfrom程序?我还以为是Web程序
DataSet ds = 读取数据
comboBox1.Items.Clear();
comboBox1.Items.Add("请选择");
foreach (DataRow row in ds.Tables[0].Rows)
{
comboBox1.Items.Add(row["id"].ToString(),row["name"].ToString());
}
[/quote]
如果数据很多的话,你遍历表去操作Items,难道效率问题不是更大吗?
要知道,绑定控件只刷新一次,而你每插入一个Item,combobox就刷新一次,界面重绘可比索引重建要慢的多了
DataSet ds = 读取数据
comboBox1.Items.Clear();
comboBox1.Items.Add("请选择");
foreach (DataRow row in ds.Tables[0].Rows)
{
comboBox1.Items.Add(row["id"].ToString(),row["name"].ToString());
}
DataSet ds = 读取数据
comboBox1.Items.Clear();
comboBox1.Items.Add("请选择");
foreach (DataRow row in ds.Tables[0].Rows)
{
comboBox1.Items.Add(row["id"].ToString(),row["name"].ToString());
}
comboBox1.Text = "请选择";
comboBox1.DataSource = ds.Tables[0];
comboBox1.DisplayMember = "name";
comboBox1.ValueMember = "id";
这样行不,反正就是给个请选择的提示嘛
DataSet ds = 读取数据
comboBox1.DataSource = null;
comboBox1.Items.Clear();
//第一种方法
comboBox1.Items.Insert(0,"请选择");
//第二种方法
//comboBox1.Items.Add("请选择");
comboBox1.DataSource = ds.Tables[0];
comboBox1.DisplayMember = "name";
comboBox1.ValueMember = "id";