主机是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”是否会引用生成的控件,但事实并非如此。为什么呢?
感谢。
答案 0 :(得分:0)
Page.FindControl
在嵌套容器中不会递归显示,因此如果myLiteral1
位于webpart使用的ascx中。
http://msdn.microsoft.com/en-us/library/31hxzsdw(v=vs.90).aspx