ASP.Net用户控制模板实例化

时间:2010-03-30 16:10:02

标签: c# .net asp.net

我创建了一个具有模板容器的用户控件。

<cc:SearchResultItem ID="SearchResultItem1" Customer='<%# ((Customer)(((RepeaterItem)Container).DataItem)) %>' runat="server">                                                
    <NameTemplate>
        <%# Container.Name %>
    </NameTemplate>
</cc:SearchResultItem> 

这是控件放在一个列出一些客户的转发器中。客户受到用户控制的约束。在容器中实例化名称模板时,客户对象尚不可用,但我需要访问其名称,因为它需要先解析。

protected void Page_Init(object sender, EventArgs e)
{
    if (nameTemplate != null )
    {
        // customer is null here, it is avaiable only after Page_Init...
        NameContainer container = new NameContainer(customer.Id, Parse(customer.Name));
        nameTemplate.InstantiateIn(container);
        placeHolder.Controls.Add(container);
    }
}

问题:如何在实例化模板容器之前访问为用户控件设置的属性?提前谢谢!

1 个答案:

答案 0 :(得分:0)

我认为你不能。在控件是数据绑定之前,如何访问控件的数据绑定属性?

从你发布的代码中,我实际上并没有看到在Init期间需要这样做,但我可能错过了一些东西。您能说明在Init期间而不是在Load或PreRender期间需要客户的原因吗?