我正在使用CellClick事件来点击行和列。
现在,当单击行标题时,它会为我提供最后一列选择的索引。
这将为我创建一个问题,因为我需要对当前选定的行和列执行操作。我该如何解决这个问题?我已经看到了大量的帮助,但所有这些都谈到了列标题点击。
这是我在单击单元格时检查行和列索引的基本测试
private void dgvUsers_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (dgvUsers.CurrentRow == null || dgvUsers.IsLoading()) return;
var row = dgvUsers.CurrentCell.RowIndex; //CurrentRow.Index;
var col = dgvUsers.CurrentCell.ColumnIndex;
var ugactive = _ugActive;
}
在上面的代码中,IsLoading只是一个检查放置在标记内的特定文本的扩展方法。
答案 0 :(得分:2)
在DataGrdView
CellClick()
事件中,可以确定当前单击的单元格检查DataGridViewCellEventArgs e
参数,其中e.RowIndex
和e.ColumnIndex
值报告参考索引点击的单元格列和行。
这也适用于Columns和Rows标头。在这种情况下,报告的值为负(-1)。
例如,如果点击了列标题,则e.ColumnIndex
将报告列的索引,e.RowIndex
将为-1
。与行标题相反。
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
//(...)
var row = e.RowIndex;
var col = e.ColumnIndex;
//(...)
}