C#中的comBox无法获取TEXT值
C# code
//数据邦定ComBox控件:
DataTable dt = new DataTable();
string strSql = "select * from dbo.TSA";
SqlDataAdapter adapter = new SqlDataAdapter(strSql, conbuilder.ToString());
adapter.Fill(dt);
cmBoxServer.DataSource = dt;
cmBoxServer.DisplayMember = "AccountName";
cmBoxServer.ValueMember = "AccountNo";
cmBoxServer.SelectedValue = (object)AccountID;
//获取ComBox的相应值
AccountID = cmBoxServer.SelectedValue.ToString();
AccountName = cmBoxServer.Text;
不知为什么,当用户选择ComBox下接内容后,AccountID和AccountName的值都正确,若用户按ComBox默认值,并没有时,AccountID的值正确,而AccountName的值为“System.Data.DataRowView”,请问怎样解决,谢谢。
------解决方案--------------------dubeg一下 看看cmBoxServer 中有哪些属性里的值是你想要的。
------解决方案--------------------好像以前遇到过,忘了是怎么回事了,你这个是从网上这的方法吗?
我记得当时从网上找的,绑定高的很复杂,结果就出了这种问题;
后来之绑定一个显示的数据源,就没事了;
cmBoxServer.SelectedValue = (object)AccountID;
你这句话是做什么用呢,没见过这种做法
------解决方案--------------------cmBoxServer.SelectedItem.Text
------解决方案--------------------comboBox1.SelectedText
------解决方案--------------------comboBoxFlag.SelectedItem.ToString();
------解决方案--------------------绑定完加上这句试试
cmBoxServer.SelectedIndex=0;
------解决方案--------------------想要获取comboBox的选中内容:
C# code
this.comboBox.SelectionItem.ToString();
------解决方案--------------------
------解决方案--------------------
楼主看看你下拉列表的属性 AutoCompleteMode和 AutoCompleteSource 的值是什么,如果不是none的话,你把属性值改成none试试
------解决方案--------------------
AccountID = cmBoxServer.SelectedItem.Value.
AccountName = cmBoxServer.SelectedItem.Text;