2010-09-23 114 views
0

我有一個自定義控件在CreateChildControls上創建一個文本框。CreateChildControls問題與自定義控件

我想在使用自定義控件的頁面的加載事件中設置此文本框的值(通過控件的屬性)。不幸的是,在這一點上,CreateChildControls尚未執行,文本框爲空。

在使用自定義控件屬性之前,我在消費者頁面上調用了EnsureChildControls,但沒有運氣,仍爲null。

發生這種情況不是回發。

回答

1

您需要從自定義控件的屬性getter中調用EnsureChildControls,以確保它在訪問嵌套控件之前構建。如果這沒有幫助發佈一些代碼,所以我們可以看到你在做什麼。

Public string Text 
{ 
    get 
    { 
     EnsureChildControls(); 
     return textBox1.Text; 
    } 
    set 
    { 
     EnsureChildControls(); 
     textBox1.Text = value; 
    } 
} 
+0

這樣做。謝謝! – StackOverflower 2010-09-23 15:31:31