7developers blog

Useful articles, videos and code examples from professional developers

How to clone DataGrid in C# .NET

public DataGrid CloneDataGrid(DataGrid s)
{
DataGrid dg = new DataGrid();

dg.AccessKey = s.AccessKey; 
dg.AllowCustomPaging = s.AllowCustomPaging; 
dg.AllowPaging = s.AllowPaging; 
dg.AllowSorting = s.AllowSorting; 
dg.AlternatingItemStyle.CopyFrom(s.AlternatingItemStyle); 
dg.CopyBaseAttributes(s); 
dg.AutoGenerateColumns = s.AutoGenerateColumns; 
dg.BackColor = s.BackColor; 
dg.BackImageUrl = s.BackImageUrl; 
dg.BorderColor = s.BorderColor; 
dg.BorderStyle = s.BorderStyle; 
dg.BorderWidth = s.BorderWidth; 
dg.CellPadding = s.CellPadding; 
dg.CellSpacing = s.CellSpacing; 
dg.CssClass = s.CssClass; 
dg.Font.MergeWith(s.Font); 
dg.FooterStyle.CopyFrom(s.FooterStyle); 
dg.ForeColor = s.ForeColor; 
dg.GridLines = s.GridLines; 
dg.HeaderStyle.CopyFrom(s.HeaderStyle); 
dg.ItemStyle.CopyFrom(s.ItemStyle); 
dg.PagerStyle.CopyFrom(s.PagerStyle); 
dg.ShowFooter = s.ShowFooter; 
dg.ShowHeader = s.ShowHeader; 
dg.ToolTip = s.ToolTip;
dg.Width = s.Width;

foreach (DataGridColumn c in s.Columns)
{
dg.Columns.Add(c);
}

return dg;
}

Loading