我的代码如下:
string strSpecility = "select 专业名称 from 专业表";
da = new SqlDataAdapter(strSpecility,conn);
da.Fill(ds,"SpecilityList");
comboBox1.DataSource = ds.Tables["SpecilityList"];
comboBox1.DisplayMember = "专业名称";我的问题是:
(1)本来的我comboBox1还有一个Text属性是"请选择专业",绑定后Text属性"请选择专业"没有了.
(2)当我引用comboBox1.SelectedItem.ToString()时.得到的却是一行代码谢谢

解决方案 »

  1.   

    (1)解决方法:在DS中添加一条"请选择专业"记录。
    (2)当你这样comboBox1.DataSource = ds.Tables["SpecilityList"];绑定后
    comboBox1.SelectedItem  的类型为System.Data.DataRowView 你可以
    ((DataRowView)comboBox1.SelectedItem).Row["SpecilityList"].ToString();得到数据。
      

  2.   

    (1)
    由于你重新绑定了数据源,也就是用程序绑定了 ,结果必然会变化了
    (2)comboBox1.SelectedItem.ToString()
    的意思就是取得你选择的那个item 也就是条目
    当然只有一行代码
    总不能你选择一行 
    出来两个结果吧
      

  3.   

    1、你可以绑定后comboBox1.Items.Insert(0, "请选择专业");
    (2)当你这样comboBox1.DataSource = ds.Tables["SpecilityList"];绑定后
    comboBox1.SelectedItem  的类型为System.Data.DataRowView 你可以
    ((DataRowView)comboBox1.SelectedItem).Row["SpecilityList"].ToString();得到数据。
    或者
    for (int i = 0;i < DS.Tables[0].Rows.Count;i++)
    {
    DataRow DR = DS.Tables[0].Rows[i];
    comboBox1.Items.Add(DR[0].ToString());
    }
      

  4.   

    1:可以在数据集中增加一个“请选择”的记录
    2:
    comboBox1.DataSource = ds.Tables["SpecilityList"];
    comboBox1.DisplayMember = "专业名称";
    这两个颠倒一下顺序试试看。可能就不出现代码而是里面的内容了。
      

  5.   

    可以指点一下((DataRowView)comboBox1.SelectedItem).Row["SpecilityList"].ToString();
    后面的.Row["SpecilityList"]是什么意思吗"?
      

  6.   

    老大你将COMBOX的属性重写了(在绑定数据源时),Text属性"请选择专业"当然没有了,可以把Text属性"请选择专业"加到数据集中.
      

  7.   

    绑定后,comboBox1.Items.Insert(0, "请选择专业");