如何访问选定行所表示的对象

本文关键字:表示 对象 何访问 访问 | 更新日期: 2023-09-27 18:15:37

我有一个SortablebindingList<Record>作为DataSourceDataGridView。我也有dataGridView.CellContentDoubleClick映射到我的selectionDblClicked()函数。

dataGridView.CellContentDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(selectionDblClicked);

        void selectionDblClicked(object sender, EventArgs e)
    {
        //Do something with the underlying `record` object...
    }

现在,eventhandler传递一个sender对象和一个EventArgs参数。

我的问题是如何使用DataGridViewCellEventHandler来访问被"双击"的底层对象?

如何访问选定行所表示的对象

使用所单击行的DataBoundItem属性

查看被点击的行,使用DataGridViewCellEventArgs的RowIndex属性。

void selectionDblClicked(object sender, DataGridViewCellEventArgs e)
{
    var rowClicked = dataGridView.Rows[e.RowIndex];
    DoSomething(rowClicked.DataBoundItem as Record);
}