给定的DataRow不在当前的DataRowCollection中

时间:2011-08-26 10:20:48

标签: c# .net-4.0

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 { }

1 个答案:

答案 0 :(得分:0)

两个数据库都来自不同的来源?所以你收到这个错误是正常的。

您只能从dtInviteLetter成员DataRowCollection中删除dtInviteLetter的行。