我在这个表中有行,现在我正在处理一个动态添加行的按钮。我认为我有正确的代码,但我的Visual Studio会出现一个错误,上面写着'名称' kost_tbl'在当前上下文中不存在。'
这是我的前端表:
<table id="kost_tbl" runat="server" border="1" width="100%">
<tr>
<td width="12%" height="30px">1</td>
<td width="22%">2</td>
<td width="22%">3</td>
<td width="22%">4</td>
<td>Totaal</td>
</tr>
<tr>
<td height="25px" style="background-color:#ddd;">1.1 </td>
<td>1.2</td>
<td>1.3</td>
<td>1.4</td>
<td>1.5</td>
</tr>
广告行的功能是这样写的:
protected void btnAddCost_Click(object sender, EventArgs e)
{
int totalRows = 1;
int totalColumns = 5;
for (int r = 0; r <= totalRows; r++)
{
System.Web.UI.HtmlControls.HtmlTableRow tableRow = new HtmlTableRow();
for (int c = 0; c <= totalColumns; c++)
{
System.Web.UI.HtmlControls.HtmlTableCell cell = new HtmlTableCell();
TextBox txtBox = new TextBox();
txtBox.Text = "Row: " + r + ", Col:" + c;
cell.Controls.Add(txtBox);
//Add the cell to the current row.
tableRow.Cells.Add(cell);
if (c == 5)
{
kost_tbl.Rows.Add(tableRow);
}
}
}
}
错误是关于代码的最后一行,即他失败的地方,并表示虽然它具有相同的id和runat =&#34;服务器&#34;但它并不存在。 / p>
关于可能出现什么问题的任何想法? (我在ASP.net中使用C#)
答案 0 :(得分:0)
更改此行:
kost_tbl.Rows.Add(tableRow);
要:
Table kost_tbl = Page.FindControl("kost_tbl") as Table;
kost_tbl.Rows.Add(tableRow);