克隆datagrid视图单元格

时间:2015-02-22 13:38:24

标签: vb.net datagridview vb.net-2010

我有一个usercontrol,它继承了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 : 

表示尚未正确克隆细胞。我需要帮助克隆单元格及其属性,包括其值。

1 个答案:

答案 0 :(得分:2)

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

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

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