2009-07-22 81 views
1

我有一個UserControl提供一些功能(加載和顯示客戶端的信息),我想擴展該用戶控件。有些形式需要普通的舊UserControl,而其他形式則需要一些額外的字段。我如何從現有的UserControl繼承,維護現有的領域,但也添加新的領域?用戶控件從另一個用戶控件繼承

我喜歡MasterPages的工作方式,您定義佔位符的地方,然後內容頁面只是爲這些佔位符添加額外的內容。這可能與UserControls?謝謝!

回答

1

我結束使用嵌套的MasterPages作爲我的UserControls(因爲他們繼承自UserControl)。然後我只是調用this.LoadControl(「〜/ mp.master」)和瞧,我嵌套用戶控件完整的設計時支持。 :)

1

也許你可以在你的UserControl中定義幾個ASP:PlaceHolders(把它看作「區域」),並通過public(或者protected,如果你只希望繼承類可以改變它們)屬性來使它們可用。這樣,您可以隨時爲他們添加子控件。

protected PlaceHolder TopZone { 
    get { return plhTop; } 
} 


protected PlaceHolder BottomZone { 
    get { return plhBottom; } 
} 

從繼承用戶控件之一:

Label lblTest = new Label { Text = "Hello World!" }; 
TopZone.Controls.Add(lblTest); 

這是一個基本的verrry例如,我希望這是對你有用的。

+0

這與我現在正在使用的方法非常相似,但它不提供與MasterPages所提供的功能相同的級別,並且難以維護。 :( – 2009-07-23 13:09:59

相關問題