DataGridViewRow.Clone Method


Creates an exact copy of this row.

 override System::Object ^ Clone();
public override object Clone ();
override this.Clone : unit -> obj
Public Overrides Function Clone () As Object


An Object that represents the cloned DataGridViewRow.


The following example demonstrates how to use the Clone method to copy a row, and then populate the copy with the cell values from the original row.

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;
Public Function CloneWithValues(ByVal row As DataGridViewRow) _
    As DataGridViewRow

    CloneWithValues = CType(row.Clone(), DataGridViewRow)
    For index As Int32 = 0 To row.Cells.Count - 1
        CloneWithValues.Cells(index).Value = row.Cells(index).Value

End Function


The Clone method copies the row and its property values, but does not copy the cell values that the row contains. For information about how to copy cell values when cloning a row, see the example section.

Override the Clone method whenever you derive from DataGridViewRow and add new properties to the derived class.

Notes to Inheritors

When overriding Clone() in a derived class, call the base class's Clone() method so that the properties of the base class are copied to the new row, and be sure to also copy the values of any properties that were added to the derived class.

Applies to

See also