日期:2014-05-17  浏览次数:21074 次

ComboBox设定SelectedValue值,Text值显示问题!!!


 DataSet DS = VS_Select.ComBox_values(MC, out message);
                
                if (DS != null && DS.Tables.Count > 0 && DS.Tables[0].Rows.Count > 0)
                {
                    CB.DataSource = DS.Tables[0];
                    CB.DisplayMember = "MC";
                    CB.ValueMember = "DM";
                    CB.Text = "";
                }
                else
                { MessageBox.Show(message); return; }




上边代码已实现ComboBox的数据绑定.


问题是:

当指定:  comboBox1.SelectedValue = YHID;(YHID为绑定对应值)后.Text值显示为空白;
意思就是当设定指定的SelectedValue 值,但ComboBox没有显示相应的Text值;

请大家帮帮忙.....
------最佳解决方案--------------------
引用:
哦,那句的意义在于,绑定数据的时候,显示第一次,为空白.


//第一次显示为空白可以在绑定后这样
CB.SelectedIndex = -1;

------其他解决方案--------------------
使用SelectedItem,或者selectedIndex或者selectedText来设置或者获取数据

selectedvalue比较诡异
------其他解决方案--------------------
上面已经绑定DisplayMember了,为什么要加
CB.Text = "";
这一行?把这一行去掉
------其他解决方案--------------------
引用:
上面已经绑定DisplayMember了,为什么要加
CB.Text = "";
这一行?把这一行去掉


哦,那句的意义在于,绑定数据的时候,显示第一次,为空白.
------其他解决方案--------------------
引用:
使用SelectedItem,或者selectedIndex或者selectedText来设置或者获取数据

selectedvalue比较诡异



都试过了,还是不行
------其他解决方案--------------------

 public partial class Form1 : Form
    {
        private DataTable dt;
        public Form1()
        {
            InitializeComponent();
            dt = new DataTable();
            dt.Columns.Add("Text");
            dt.Columns.Add("Value");
            dt.Rows.Add("a", 1);