刚开始的时候,就按照正常的操作,给gridview设置属性,添加了repositoryItemcombox,然后呢,出现了一个神奇的现象

就是在前一列内容选择完成后单击,然后第一列内容莫名其妙的一闪而过,但是第二列的值已经检索出来了,而且第二列的值不会闪过。

原因:在给第二列的repositoryItemcombox.items赋值的时候,会进行再一次的控件的整体初始化,然后我的解决办法始,先保存选定的值,然后待初始化完后,再对该单元格进行重新赋值。

代码如下:

private void repositoryItemComboBox2_EditValueChanged(object sender, EventArgs e)
        {

            DBhelper dBhelper = new DBhelper();
            
            BaseEdit logicEdit = dcyx_gridview.ActiveEditor;//获取活动的单元格
            string JIE = logicEdit.EditValue.ToString();
            List<string> list = dBhelper.query(JIE);
            repositoryItemComboBox1.Items.Clear();
            foreach (var v in list)
            {
                repositoryItemComboBox1.Items.Add(v);
            }
            this.dcyx_gridview.SetRowCellValue(this.dcyx_gridview.GetSelectedRows()[0],"JIE",JIE);//这里是关键
            list.Clear();

        }

 

posted on 2018-11-27 23:08  xiaoshibushiyue  阅读(154)  评论(0)    收藏  举报