我想在調用控件的CreateChildControls方法之前在自定義Web控件上設置屬性。原因是,在那裏執行了很多邏輯,這取決於所討論的財產的價值。我可以直接使用HTML中的顯式值設置屬性,並及時提取屬性,但這對我來說沒用,因爲它需要基於服務器端變量。在調用CreateChildControls之前在控件上設置屬性
棘手的是,EnsureChildControls方法是從控件的「CONTENTS」屬性的getter中調用的,該屬性對應於ASPX文件中的標籤。例如。;
<myControl>
<content>
...
</content>
</myControl>
據我所知,這反過來又觸發重寫CreateChildControls方法,使邏輯不爲我試圖設置該屬性正確的值執行。
我正在努力解決的是,在我的頁面的ASP.NET生命週期中,我可以設置屬性,以便在.NET訪問「CONTENT」屬性的getter之前設置屬性我的控制?
我試過在父頁上的OnPreInit,但仍然是在控件的CreateChildControls之後被擊中。我也不想改變控制本身,因爲它是一個通用控件,我不想特殊情況下爲這個特殊情況。
任何人有任何想法,我可以設置我的財產價值,所以它是按照我試圖實現的順序拾起的?
非常有幫助的答案,謝謝。 – 2009-03-05 15:38:15