m c#.m在C#和.net上的新工作。我坚持这个问题两个月。当我从gridview中删除行时,它给出错误给定的DataRow不在当前的DataRowCollection中。
try
{
if (dgvLetterSent.CurrentRow.Index != -1)
{
BindingManagerBase bm = dgvLetterSent.BindingContext[dgvLetterSent.DataSource, dgvLetterSent.DataMember];
DataRow dr = ((DataRowView)bm.Current).Row;
if (dr[7].ToString() != "Not Specified")
{
MessageBox.Show("Cannot remove the letter once it has been printed.", "NPB Database", MessageBoxButtons.OK);
}
else
{
dtInviteLetter.Rows.Remove(dr);//this give me exception that The given DataRow is not in the current DataRowCollection.
dtInviteLetter.AcceptChanges();
fetchPaymentDetails();
}
}
}
catch { }
答案 0 :(得分:0)
两个数据库都来自不同的来源?所以你收到这个错误是正常的。
您只能从dtInviteLetter
成员DataRowCollection
中删除dtInviteLetter
的行。