循环通过表格控件来获取单元格文本

时间:2014-08-13 14:44:47

标签: c# asp.net

我有6个名为Seq(num)选项卡的表现在我有一个很大的代码操作在每个表上执行而不是为每个表做一个巨大的切换案例我宁愿有一个循环可以循环通过表基本上像这样(理论上)应该这样做。显然非常被剥离用于显示目的

for (int i = 1; i <= totalseq; i++)
{
    string originstart = (Table)Page.FindControl("Seq" + I + "Num").Rows[1].Cells[0].Text;

    // have also tried this

    string originstart = Page.FindControl("Seq" + I + "Num", as Table).Rows[1].Cells[0].Text;

    //lots of code using originstart
}

然而,我只是得到不同的错误,为什么它不会工作,即。 (第1个示例)不包含行的定义。它的表控件当然是有行定义lol

有人有什么想法吗?

1 个答案:

答案 0 :(得分:0)

从评论

转换而来

此代码:

(Table)Page.FindControl("Seq" + I + "Num").Rows[1].Cells[0].Text

尝试执行所有调用链,然后将Text属性强制转换为Table。您真正需要的是将FindControl结果转换为Table

((Table)Page.FindControl("Seq" + I + "Num")).Rows[1].Cells[0].Text

注意附加的括号。另请注意,只有将表声明为服务器端控件并且该页面是该页面的直接子项时,此代码才有效。