2013-07-11 53 views
1

我有一個類:.NET替換從基類的方法在子類

Class ForeignKey_EditField 
    Inherits FieldTemplateUserControl 

的FieldTemplateUserControl類是System.Web.DynamicData的一部分。在這個類有一個方法:

Protected Sub PopulateListControl(listControl As System.Web.UI.WebControls.ListControl) 
    Member of System.Web.DynamicData.FieldTemplateUserControl 

這是從子類中調用,我怎麼能代替這個方法我自己而不更改名稱。超載,陰影等?簽名應該是什麼?

回答

1

如果你想更換方法,然後你需要預選賽overridable添加到基方法,則子類中的方法應該是相同的,但與預選賽overrides而不是overridable

編輯:由於覆蓋不是一個選項,替代是陰影。但陰影不是虛擬的,所以只有在編譯時間類型是子類或更具體的類型時纔會調用新方法。沒有辦法強制調用舊的方法來替換編譯時間類型爲父類的新方法。

+0

我不能這樣做,因爲它從編譯代碼繼承。 –