获取DataGridView CurrentCellChanged事件中的当前单元格列索引
我有DataGridView
的CurrentCellChanged
事件处理程序,我希望能够从事件处理程序访问当前选定的单元格列索引。
我以前在CellClick
处理程序中有代码,其中DataGridViewCellEventArgs
作为参数,所以我能够从事件args参数中获取列索引,但是CurrentCellChanged
事件将EventArgs
作为参数,我相信这应该暗示没有数据为这个事件。
有没有办法访问新的当前选定的单元格列索引?
使用DataGridView.CurrentCell
属性..
http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.currentcell.aspx
int columnIndex = dataGridView.CurrentCell.ColumnIndex; int rowIndex = dataGridView.CurrentCell.RowIndex;
http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcell.aspx
使用DataGridView的CurrentCell属性。
void dataGridView1_CurrentCellChanged(object sender, EventArgs e) { MessageBox.Show(dataGridView1.CurrentCell.ColumnIndex.ToString()); MessageBox.Show(dataGridView1.CurrentCell.RowIndex.ToString()); }
如果你想用列标题检查它
dataGridView.CurrentCell.Column.Header
值得注意的是,如果有人使用WPF (使用DataGrid而不是DataGridView),他们可以简单地执行:
DataGrid currentGrid = sender as DataGrid;
然后
currentGrid.CurrentColumn.DisplayIndex
要么
currentGrid.CurrentCell.Column.DisplayIndex