如何使用递归逻辑在c#中创建嵌套html表?
我只是试了一下,但是我得到了唯一的HTML表,我只需要在一个表中创建另一个表 样本输出: 在设计页面中如何使用递归逻辑在c#中创建嵌套html表?,c#,C#,我只是试了一下,但是我得到了唯一的HTML表,我只需要在一个表中创建另一个表 样本输出: 在设计页面中 <table id="tableContent" border="1" runat="server"></table> protected void Page_Load(object sender, EventArgs e) { var s = 0; Addtable(s); } public void Addta
<table id="tableContent" border="1" runat="server"></table>
protected void Page_Load(object sender, EventArgs e)
{
var s = 0;
Addtable(s);
}
public void Addtable(int j)
{
HtmlTableRow row = new HtmlTableRow();
HtmlTableCell cell = new HtmlTableCell();
cell.InnerText = "col 1";
row.Cells.Add(cell);
cell = new HtmlTableCell();
cell.InnerText = "col2";
row.Cells.Add(cell);
tableContent.Rows.Add(row);
tableContent.Border =1;
if( j < 5)
{
j++;
Addtable(j);
}
}
受保护的无效页面加载(对象发送方、事件参数e)
{
var s=0;
可添加的;
}
公共无效添加表(int j)
{
HtmlTableRow行=新的HtmlTableRow();
HtmlTableCell=新的HtmlTableCell();
cell.InnerText=“col 1”;
行.单元格.添加(单元格);
cell=新的HtmlTableCell();
cell.InnerText=“col2”;
行.单元格.添加(单元格);
tableContent.Rows.Add(row);
tableContent.Border=1;
if(j<5)
{
j++;
可加表(j);
}
}
您需要如下更改递归函数
public void Addtable(HtmlTable baseTable, int j)
{
HtmlTable innerTable = new HtmlTable();
// change to stylesheet instead. Just added as an example to get the output
baseTable.Style.Add("margin-left", "25px");
baseTable.Style.Add("margin-right", "25px");
baseTable.Style.Add("margin-bottom", "25px");
baseTable.Style.Add("text-align", "center");
baseTable.Border = 1;
//Create a container cell for inner table
HtmlTableRow container = new HtmlTableRow();
HtmlTableCell containerCell = new HtmlTableCell();
Literal l = new Literal();
l.Text = "Table " + j;
containerCell.Controls.Add(l);
containerCell.Controls.Add(innerTable);
containerCell.ColSpan = 2;
container.Cells.Add(containerCell);
baseTable.Rows.Add(container);
if (j < 5)
{
j++;
Addtable(innerTable, j);
}
}
到底是什么不起作用?请更详细地描述所需的和实际的行为。请参考示例输出。@katherdx-堆栈溢出只起作用,因为人们提供他们的业余时间来帮助。如果您发布了一个问题,您需要尽可能多地工作,使我们能够轻松回答您的问题。通常不接受说“请参考样本输出”。你应该确保你的问题被清楚地陈述,并且你应该对所有要求澄清的请求做出充分的回应。@katherdx:别忘了接受上面的回答。
var s = 0;
Addtable(tableContent,s);