我有一个GridLookUpEdit和wath来获取FocusedRowChanged事件的编辑值:
private void gridView_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
{
var view = sender as GridView;
if (view != null)
{
MessageBox.Show(view.GetRowCellValue(e.FocusedRowHandle, view.Columns[1]).ToString());
}
}但是在这里,我得到一个错误,表示我离开了列数组。但我有两列,第一列可见,第二列不可见。
这里出什么问题了?如果可能的话,如何才能更正确地获得EditValue呢?
发布于 2014-09-08 10:59:20
您的视图似乎只有一列,而基础数据源中有两列。因此,您可以从基础数据源中获得一个值。
如果基础数据源是DataTable,那么可以使用ColumnView.GetDataRow方法:
MessageBox.Show(view.GetDataRow(e.FocusedRowHandle)[1].ToString());如果基础数据源是List<SomeObject>,那么可以使用ColumnView.GetDataSourceRowIndex方法:
MessageBox.Show(YourList[view.GetDataSourceRowIndex()].YourColumn.ToString());或者可以使用ColumnView.Columns集合添加第二列:
var column = view.Columns.AddField("YourField");
column.Visible = false;https://stackoverflow.com/questions/25721683
复制相似问题