2010-10-12 50 views
0

HI,ASP.net Usercontrol基礎和子如何初始化基礎控件?

1.create Base usercontrol其中包含一個標籤並將其文本設置爲「test1」,這是在ascx頁面中設置的。 2.創建一個從基本用戶控件繼承的用戶控件。 3.現在的子控件的頁面加載我試着做:

保護覆蓋無效的Page_Load(對象發件人,EventArgs的){ // 異常此拋出Label1的是空 this.Label1。 Text =「sasasas」;

}

但是我得到一個異常,因爲Label1爲空。

能aonyone告訴我如何初始化基控制控件創建子控件時?????

感謝 尼爾

+1

儘量不要做這種方式。在基本用戶控件中公開一個屬性,並在該子控件中設置該屬性。然後,基本用戶控件可以查看它是否已設置,然後相應地設置文本。 – RPM1984 2010-10-12 08:20:13

+0

這就是rpm,如果你在下面添加了答案,我會給你一個分數。乾杯尼爾 – Somedeveloper 2010-10-13 22:09:46

回答

1

由於RPM1984評論:不要你Webusercontrol但窩它繼承你的用戶控件等裏面。當您在「父」-UC中暴露了Control(即,您的標籤或其Text屬性)屬性時,可以從您的「子」-UC訪問它。

此外,始終使用LoadControl來初始化動態添加的Usercontrol而不是構造函數(可能是Textbox爲NULL的原因)。

+0

謝謝你。雅我已經做到了,但因爲我想基於繼承的控制來執行所需的方法等我修改了基本控制,以不是用戶控制,但由system.we.ui.usercontrol繼承來代替。 – Somedeveloper 2010-10-13 22:08:22