我有以下行从DataRow
创建DataGridViewRow
,当用户点击DataGridViewRow
<中的checkbox
时会提取DataGridViewCheckboxColumn
/ p>
private void dgvAvailableCourses_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
DataRow dr = ((DataRowView)dgvAvailableCourses.Rows[e.RowIndex].DataBoundItem).Row
}
dgvAvailableCourses - DataGridview
当我运行上面的行时,它说,这行绑定到另一个表,我该如何解决这个问题呢?我需要此行为DataRow
DataTable
即使我以不同的方式使用dr
,仍会出现相同的错误
private void dgvAvailableCourses_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
DataTable dt = (DataTable)dgvAvailableCourses.DataSource;
DataRow dr = dt.Rows[e.RowIndex];
}
感谢
答案 0 :(得分:0)
我认为您需要执行CancelEdit / EndEdit来查询您的源,因为该行处于编辑模式我相信。
DataRow dr = dt.Rows[e.RowIndex];
(dr.RowState == RowState.Modified){
dr.EndEdit();
}
//Access the row data here
DataRow dr = ((DataRowView)dgvAvailableCourses.Rows[e.RowIndex].DataBoundItem).Row