0

我在 aspx 页面中创建了 4 个占位符。我将它们命名为 placeHolder1、placeHolder2、placeHolder3、placeHolder4。如何在循环中动态地将内容添加到这些占位符?我知道我可以复制四次不同的时间,但我想保存一些代码并在循环中执行。真的可以这样做吗?

4

2 回答 2

3

您可以循环浏览页面上的所有控件,并找到您感兴趣的类型,如下所示:

foreach (Control ctrl in this.Controls)
{
    if (ctrl is ContentPlaceHolder)
    {
        ContentPlaceHolder cph = (ContentPlaceHolder)ctrl;

        if (cph.ID == "placeHolder1")
        {
            // do whatever
        }
    }
}

我没有测试过这段代码,但它可以让你大致了解如何遍历占位符。

于 2012-08-08T14:18:58.583 回答
1

像这样的东西应该工作:

for (int i = 1; i <= 4; i++)
{
 PlaceHolder myControl = FindControl("placeHolder" + i) as PlaceHolder;
 //Do whatever with control;
}
于 2012-08-08T14:22:28.647 回答