有没有其他简洁的方法从DataGridView行双击事件获取记录ID?这是事件吗?
private void dataGridView1_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
{
var databaseRecordId = dataGridView1.Rows[e.RowIndex].Cells[0].Value;
//...
}
答案 0 :(得分:4)
准确地说
private void dataGridView1_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
{
var databaseRecordId = dataGridView1.Rows[e.RowIndex].Cells[0].Value;
}
CellDoubleClick
事件比CellContentDoubleClick
或CellMouseDoubleClick
更适合。
答案 1 :(得分:3)
我不知道这是否一定“更容易”,但如果你不想在网格视图中显示id或更改列顺序,它会更安全一些。
var databaseRecordId = ((MyBoundObjectType)dataGridView1.Rows[e.RowIndex].DataBoundItem).MyRecordId;
MyBoundObjectType
和MyRecordId
是绑定到行和相应Id属性的类型。