0

有没有其他简洁的方法可以从 DataGridView 行双击事件中获取记录 ID?那是要使用的事件吗?

   private void dataGridView1_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
    {
        var databaseRecordId = dataGridView1.Rows[e.RowIndex].Cells[0].Value;
        //...
    } 
4

2 回答 2

4

准确地说

private void dataGridView1_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
    {
        var databaseRecordId = dataGridView1.Rows[e.RowIndex].Cells[0].Value;
    } 

CellDoubleClick事件比CellContentDoubleClickor更适合CellMouseDoubleClick

于 2012-11-11T01:23:11.437 回答
3

我不知道这是否一定“更容易”,但如果您不想显示 id 或更改 gridview 中的列顺序,它会更安全一些。

var databaseRecordId = ((MyBoundObjectType)dataGridView1.Rows[e.RowIndex].DataBoundItem).MyRecordId;

whereMyBoundObjectTypeMyRecordId是绑定到行和相应 Id 属性的类型。

于 2012-11-11T01:14:48.300 回答