可以通过等号将表复制到另一个表吗? 如果没有,那怎么样?

如何复制表格控件?

table2=table1? 

ASP.NET C#Visual Studio 2008表控件。

原因是它适用于字符串。 假设下面的字符串是表。

 string full; string userinput; full = full + userinput; 

编辑:自从2010年6月回答这个问题以来,我花了很多时间使用jQuery在客户端上做这种事情。 如果对这种方法感兴趣,请查看jQuery clone()和append(),after(),before()和相关方法。 结束编辑

不,你不能。 与任何其他控件一样,表是引用类型。 这意味着复制它只是复制对真实对象实例的引用。 因为它不实现System.ICloneable您必须创建一个新的,然后逐个手动复制属性。

我很想知道你为什么要这样做,因为它似乎没有遵循我熟悉的任何最佳实践。 你能描述一下你想做什么吗?

你可以做的一件事是复制表的内容,虽然这不会复制其他属性,如样式和单元格填充等:

  protected void CopyTable() { var clontable= new HtmlTable(); var mytbl = form1.FindControl("mytable") as HtmlTable; if (mytbl != null) { HtmlTableRow myrow; HtmlTableCell mycell; for (int i = 0; i < mytbl.Rows.Count - 1; i++) { myrow = new HtmlTableRow(); for (int j = 0; j < mytbl.Rows[i].Cells.Count - 1; j++) { mycell = new HtmlTableCell(); mycell.InnerHtml = mytbl.Rows[i].Cells[j].InnerHtml; myrow.Cells.Add(mycell); } clontable.Rows.Add(myrow); } form1.Controls.Add(clontable); } }