我正在使用c#ASP .Net,HtmlTable,HtmlTableRow,HtmlTableCell创建一个表。
例如......我需要让<tfoot> and </tfoot>
我尝试用HtmlGenericControl来将这些带有标签“tfoot”的单元格包装到HtmlTable中,但它不起作用。
我知道HtmlTableCell可以在构造函数“th”中用于“thead”和“td”用于tbody。 但我需要用实际的“thead”和“tbody”包裹它们。
任何建议??
答案 0 :(得分:22)
以下是(如下)。使用的所有类都在System.Web.UI.HtmlControls中。
TableRow row = new TableHeaderRow();
TableRow row2 = new TableRow();
TableRow row3 = new TableFooterRow();
Table table = new Table();
var cell1 = new TableCell();
row.TableSection = TableRowSection.TableHeader;
cell1.Text = "Header";
row.Cells.Add(cell1);
var cell2 = new TableCell();
cell2.Text = "Contents";
row2.Cells.Add(cell2);
var cell3 = new TableCell();
cell3.Text = "Footer";
row3.Cells.Add(cell3);
row3.TableSection = TableRowSection.TableFooter;
table.Rows.Add(row);
table.Rows.Add(row2);
table.Rows.Add(row3);
this.Controls.Add(table);
答案 1 :(得分:4)
看起来不好,我很害怕。这来自http://msdn.microsoft.com/en-us/library/system.web.ui.htmlcontrols.htmltable%28VS.80%29.aspx
请注意
不支持复杂的表模型。你不能拥有嵌套&lt;的HtmlTable控件。标题&gt;,&lt; col&gt;,&lt; colgroup&gt;,&lt; tbody&gt;,&lt; thead&gt;,或者&lt; tfoot&gt;元素。这些元素在没有警告的情况下被删除,并且不会出现在输出HTML中。如果您尝试以编程方式将这些表模型元素添加到HtmlTable控件的Control.Controls集合中,则会抛出异常。
那时老派的HTML就是这样。
答案 2 :(得分:1)
您可以使用
HtmlGenericControl table = new HtmlGenericControl("table");
而不是
HtmlTable table = new HtmlTable();
答案 3 :(得分:0)
graphicdivine具有正确的响应,该功能无法使用htmlcontrols以编程方式构建表。您可以使用html标记在标记中构建它,并在需要的地方添加runat服务器,或者使用webcontrol以编程方式构建它。比如Table,TableRow等...