ASP.NET控件无法在SharePoint Web部件中查找子控件

时间:2012-10-18 18:41:56

标签: asp.net sharepoint user-controls

主机是SharePoint 2010,使用VS2010 .NET 3.5。我有自定义ASCX控件生活在Web部件中。控件继承自继承自System.Web.UI.UserControl的POCO类。此控件具有以下代码:

protected override void OnPreRender(System.EventArgs evArgs)
        {
            var myliteral = Page.FindControl("myliteral");
            base.OnPreRender(evArgs);
        }

并且每个.ascx都有此内容:

<asp:Literal ID="myliteral" runat="server" Visible="false"><br /></asp:Literal>

我设置了一个断点,看看C#代码中的“myliteral”是否会引用生成的控件,但事实并非如此。为什么呢?

感谢。

1 个答案:

答案 0 :(得分:0)

Page.FindControl在嵌套容器中不会递归显示,因此如果myLiteral1位于webpart使用的ascx中。

http://msdn.microsoft.com/en-us/library/31hxzsdw(v=vs.90).aspx