我的gridcontrol在其中一列中有一个RepositoryLookupEdit。我可以在更改后获取RepositoryLookupEdit的值,但我不知道如何更改哪一行的RepositoryLookupEdit值。我怎样才能获得行ID?
使用下面的代码,我可以获得RepositoryLookupEdit值。
private void repositoryItemLookUpEdit1_EditValueChanged(object sender, EventArgs e)
{
LookUpEdit edit = sender as LookUpEdit;
var row = edit.Properties.GetDataSourceRowByKeyValue(edit.EditValue);
}
答案 0 :(得分:1)
由于repositoryItemLookUpEdit不限于GridControls,因此您无法从此事件获取行句柄。然而,你有其他可能性。
首先,如果用户完成编辑,您可以使用ColumnView.GetFocusedRow()方法获取当前网格行。
如果编辑值通过代码更改,它也会在网格中更改,因此您现在可以使用ColumnView.CellValueChanged事件。
private void repositoryItemLookUpEdit1_EditValueChanged(object sender, EventArgs e)
{
LookUpEdit edit = sender as LookUpEdit;
var row = edit.Properties.GetDataSourceRowByKeyValue(edit.EditValue);
gridRow = gridView.GetFocusedRow() as MyDataRow
}