克隆数据网格视图单元格

Cloning datagrid view cell

我有一个用户控件,它继承了 winforms datagirdviewcontrol & 在这里我试图用它的值克隆一个单元格并将它存储在一个变量中。我使用以下函数克隆了单元格及其值。

Private Function CloneCellWithValue(ByVal cell As DataGridViewCell) As DataGridViewCell
    Console.WriteLine("Original cell @ row : " & cell.RowIndex & " column : " & cell.ColumnIndex & " value : " & cell.Value)
    CloneCellWithValue = cell.Clone()
    Console.WriteLine("Cloned cell @ row : " & CloneCellWithValue.RowIndex & " column : " & CloneCellWithValue.ColumnIndex & " value : " & CloneCellWithValue.Value)
    CloneCellWithValue.Value = cell.Value
End Function

我将需要克隆的单元格传递给此函数,但该单元格没有被克隆。我尝试记录克隆单元格的行索引、列索引和值等属性,以确保单元格已正确克隆。

并且控制台显示。

Original cell @ row : 1 column : 1 value : 
Cloned cell @ row : -1 column : -1 value : 

这意味着细胞没有被正确克隆。我需要有关克隆单元及其属性(包括其值)的帮助。

System.Windows.Forms.DataGridViewCell.Clone() 创建单元格的精确副本,但这并不意味着该单元格将共享相同的行或列索引。这只是意味着它将具有相同的格式等:

https://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcell.clone%28v=vs.110%29.aspx

注意:这将不会克隆单元格的值。克隆后,您必须从源单元格中复制值。另外,没有两个单元格可以占据网格中的相同位置,因此它不可能具有相同的行和列索引。