在XtraGridView的组合框中更改其他列值onselectedvaluechanged事件
问题描述:
有没有办法获得在combobox中选择值被更改的行的句柄?在XtraGridView的组合框中更改其他列值onselectedvaluechanged事件
让我试着用例子来解释它。 在GridView中,我有两列, 名称,类型
类型列有组合框,其值1和2
我想要做的就是在类型列中选择值1, 我想更改名称为“一”
于type列中选择2, 我想改变名称,以“两”
这是我尝试,
private void OnType_SelectedValueChanged(object sender, EventArgs e)
{
DevExpress.XtraEditors.ComboBoxEdit comboType = sender as DevExpress.XtraEditors.ComboBoxEdit;
DataRow row = (DataRow) myGridView.GetFocusedRow();
if (comboType .SelectedItem.ToString() == "1")
{
row.Name = "one";
}else
{
row.Name = "two";
}
}
但是我在这里得到myGridView.GetFocusedRow()为null。
我在做什么错?
答
正确的方法是将存储库编辑器绑定到列。
RepositoryItemComboBox riCmb = new RepositoryItemComboBox();
处理好editvaluechanged事件
riCmb.EditValueChanged += riCmb_EditValueChanged;
然后在事件处理程序内
if(myGridView.GetRowCellValue(myGridView.FocusedRowHandle, "FieldName").ToString() == "1")
{
grvInstruments.SetRowCellValue(grvInstruments.FocusedRowHandle, "FieldName", "One");
}
您可以使用SetFocusedRowCellValue(COL,值),如果你不想提供的行处理 – SidAhmed 2012-08-01 08:09:12
谢谢@Aseem Gautam – 2012-09-05 17:51:50