首页 > 代码库 > DevExpress gridview下拉框(三)
DevExpress gridview下拉框(三)
经过前两次的探索和研究(DevExpress gridview下拉框repositoryItemComboBox的使用 ,DevExpress gridview下拉框的再次研究),今天实习工作上终于用到了,但发现并不能满足我的需求。
当我们绑定了数据源(如:bindingSource1.DataSource = dt)之后,只要我们对gridview单元格数据进行操作,dt也会跟着变。但是我的repositoryItemComboBox绑定了一个Item,Item包含显示值和实际值。Item中的数据不是来源于dt,所以当我repositoryItemComboBox选择一个值后,dt中用于存放显示值和实际值的列是不会跟着改变的。
经过研究发现以前真的是用来很麻烦的步骤来解决,其实只需要在repositoryItemComboBox的SelectedIndexChanged事件中,给单元格赋值即可,代码如下:
private void cbo_Equipment_SelectedIndexChanged(object sender, EventArgs e) { CboItemEntity item = new CboItemEntity(); try { //1.获取下拉框选中值 item = (CboItemEntity)(sender as ComboBoxEdit).SelectedItem; string text = item.Text.ToString(); string value =http://www.mamicode.com/ item.Value.ToString(); GridView myView = (gc_Equipment.MainView as GridView);
//1.给当前行对应单元格赋值 myView.SetRowCellValue(myView.FocusedRowHandle, gv_Equipment.Columns["EquipmentName"],text); myView.SetRowCellValue(myView.FocusedRowHandle, gv_Equipment.Columns["EquipmentId"], value); } catch (Exception ex) { XtraMessageBox.Show(ex.Message, "提示"); } }
从代码可以看出,当我改变选中值事,对应给单元格内容赋值,因此dt也会变了。而且这样些,也不会出现Iconvertible问题了。
DevExpress gridview下拉框(三)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。