我有一个命令类,它(希望)使用DataGridViewRow作为成员,以便执行和撤消。当我试图将传入的dgvr赋值给构造函数中的成员行(例如_row = r;)时,我似乎得到了一个引用,而不是一个新的副本,这使得撤消操作变得不可能(此时原始的dgvr被删除,成员行变为空)。
我还尝试通过msdn“复制”行,如下所示:
public DataGridViewRow CloneWithValues(DataGridViewRow row)
{
DataGridViewRow clonedRow = (DataGridViewRow)row.Clone();
for (Int32 index = 0; index < row.Cells.Count; index++)
{
clonedRow.Cells[index].Value = row.Cells[index].Value;
}
return clonedRow;
}然而,这似乎留下了模式,因为我不能按名称访问字段(例如,_row.Cells"critical".Value)。
如何按值复制DataGridViewRow?
发布于 2011-09-16 01:05:55
我将尝试一种简单得多的方法,在数据表级别,调用datatable.Rows.Add并传递修改后的datarow.ItemArray。
如果你仍然有一个对你的表的引用,这是可行的,我认为它应该是网格数据源。我在我的项目中使用了它,并且通常工作得很好。
https://stackoverflow.com/questions/7433879
复制相似问题