我把一个combobox控件拖入窗体后,钩选Combobox Tasks的Use data bound items选项,为combobox设定Data Source 和 Display Member(Value Member和Selected Value没设定),结果我一运行后combobox里就会显示一个绑定了的数据。而我希望的效果是运行后combobox里为空白,要用户选择一个数据后才显示出来。我的combobox的DropDownStyle属性设为了DropDownList,因为我希望combobox不能输入。

解决方案 »

  1.   

    this.combobox.text="";没用。
    什么是动态绑定,你是说自己创建一个数据源吗?
    我现在的要求是在用了Combobox Tasks里的绑定操作后,让combobox里不显示数据。
      

  2.   

    显示以后,在用户选择一个数据后的触发事件里绑定相当于用代码实现你在设计器上对Combox绑定所做的修改
    //绑定一张表
    this.cmbPerson.DataSource = m_dataset.Tables["emp"];
    //显示绑定表里的一列
    this.cmbPerson.DisplayMember = m_dataset.Tables["emp"].Columns["ename"].ToString();
    试一下,很简单的!
      

  3.   

    不要在设计器里绑定 在例如form_load事件中用代码指定数据源
      

  4.   

    绑定的是否有问题?ComboBox1.DataSource = myDataSet ;//数据集
    ComboBox1.DisplayMember = "person.userId" ;//表名加字段名
    ComboBox1.ValueMember = "person.username" ;this.ComboBox1.DataSource = myDataTable;//数据表
    this.ComboBox1.DisplayMember = "Name";//字段名
    this.ComboBox1.ValueMember = "userId";//字段名
      

  5.   

    在DataSet里面的DataTable前面再添加一行:DataSet ds = ......;
    DataRow rowAll = ds.Tables[0].NewRow();
    rowAll["codeno"] = "0";
    rowAll["codename"] = "Please Select....";
    ds.Tables[0].Rows.InsertAt(rowAll, 0);comboBox1.DisplayMember = "codename";
    comboBox1.ValueMember = "codeno";
    comboBox1.DataSource = ds.Tables[0];
      

  6.   

    combobox.Items.Add(new ListItem("请选择","-1"));
    for(int i=0;i<ds.Table[0].Rows.Count;i++)
    {
    combobox.Items.Add(new ListItem(ds.Table[0].Rows[i]["codename"].ToString(),ds.Table[0].Rows[i]["codeno"].ToString()));
    }
      

  7.   


    如何去ValueMember   ?
      

  8.   

    ComboBox1.Items.Insert(0, new ListItem("", ""));