我有一個自定義Web部件,我試圖調用RenderContents方法,但結果只包含Web部件的周圍div,而沒有任何子控件。WebPart RenderControl不呈現內容
就拿這個簡單的Web部件:
namespace MyWebParts
{
public class MyTestWebPart : WebPart
{
public MyTestWebPart()
{
this.CssClass = "myTestWebPart";
}
protected override void CreateChildControls()
{
base.CreateChildControls();
this.Controls.Add(new LiteralControl("Nothing here yet."));
}
}
}
然後,在HTTP處理程序,我試圖實例化這個網絡的一部分,並調用其RenderControl方法。結果是<div class="myTestWebPart"></div>
。
有誰知道爲什麼我沒有從CreateChildControls獲取我的控件也添加到輸出?
我把它,這意味着我的頁面生命週期事件將無法正確要麼然後解僱?我的web部分也有一個重寫的OnInit方法。所以我想這也不會被解僱。另外,爲了充分披露,我並沒有直接實例化我的Web部件。我實際上使用SPLimitedWebPartManager獲取它的一個實例(不知道這是否有所作爲)。 – TehOne 2011-03-24 18:22:40
這是正確的,你可以使用調試器來驗證它。 – 2011-03-25 20:42:45