1

ホストは SharePoint 2010 で、VS2010 .NET 3.5 を使用しています。Web パーツにカスタム ASCX コントロールがあります。コントロールは、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" が生成されたコントロールへの参照を持っているかどうかを確認するためにブレークポイントを設定しましたが、そうではなく、null になっています。なんで?

ありがとう。

4

1 に答える 1

0

Page.FindControlネストされたコンテナーでは再帰的に検索されないためmyLiteral1、webpart で使用される ascx にある場合。

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

于 2012-10-20T20:46:41.350 に答える