0

有时我的数据库中的新记录与以前的记录几乎相同,我想制作一个“从最后一个创建”按钮,从最后一个创建新记录(如果这不是第一个记录)

我正在尝试类似的东西: object rec = BindingSource1.Current; BindingSource1.Add(cur);

但我收到此错误:

System.Data.dll 中出现“System.ArgumentException”类型的第一次机会异常

附加信息:无法将外部对象添加到此列表。

4

1 回答 1

0

终于我找到了答案!

我正在使用我的 BindingSource1 的 .AddingNew 事件

private void BindingSource1_AddingNew(object sender, AddingNewEventArgs e)
        {
  if(need_insert_from_Current)
                {
                BindingSource bs =(BindingSource)sender;
                DataRowView cur = (DataRowView)bs.Current;
                DataView dv=(DataView)bs.List;
                DataRowView drv=dv.AddNew();
                // Collect data from current rec (except from the 1st value (Id is Identity !)
                for (int i = 1; i <= dv.Table.Columns.Count-1; i++)
                {
                    drv.Row[i] = cur.Row[i];
                }
                bs.Position = bs.Count - 1;
                e.NewObject = drv;
                need_insert = true;
                need_insert_from_Current=false;
                }
        }
于 2013-11-17T21:23:56.133 回答