如何在asp.net页面中添加UserControls的动态数字?

时间:2010-02-25 11:00:33

标签: c# asp.net

问题在于:

我有一个(几乎)空的aspx页面,我想在此页面中插入一定数量的相同用户控件。

事实是,我不知道我需要多少人。

我尝试从CodeBehind添加它们,但似乎UserControls完全是空的。

在主页面中(MainDiv是一个带有runat =“server”的div):

protected void Page_Init(object sender, EventArgs e)
{
    WebUserControl1 uc = new WebUserControl1();
    WebUserControl1 uc1 = new WebUserControl1();
    MainDiv.Controls.Add(uc);
    MainDiv.Controls.Add(uc1);
}

(如果我将此代码放在Page_Init,Page_Load或Page_PreRender上,则无效)

UserControl(gw是UserControl中包含的Gridview):

protected void Page_PreRender(object sender, EventArgs e)
{
    if (_data != null)
    {
        gw.DataSource = _data;
        gw.DataBind();
    }
}

当我到达那里时,gw为null(this.Controls.Count为0)。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

这就是repeater control的用途。