HOW TO:擴充元件容器
元件容器是完全可擴充的。 您可以繼承自 Container 類別並加入屬性或方法、加入自訂功能來強制規則、覆寫基底方法或任何您要加入至容器中的其他自訂功能。 如需容器和擴充容器的詳細資訊,請參閱容器、站台和元件。
您擴充 Container 的方法就和擴充任何基底類別一樣。 您先建立繼承基底類別屬性的類別、覆寫您要擴充的任何基底方法並加入您需要的任何其他屬性或方法。 您接著就可以像使用標準的 Container 一般來使用您的新類別,也可以使用任何您已編碼的新功能。
若要擴充 Container 基底類別
宣告繼承自 Container 類別的新類別。
Public Class myContainer Inherits System.ComponentModel.Container End Class
class myContainer: System.ComponentModel.Container { }
class myContainer extends System.ComponentModel.Container { }
覆寫任一基底類別方法來加入其他功能。 以下範例將說明如何覆寫 Add 方法。
注意事項 ' Because Add is overloaded, this line includes the Overloads keyword. Public Overloads Overrides Sub Add(ByVal component As _ System.ComponentModel.IComponent) ' Determines if the component can be added to the container. If TypeOf component Is Widget Then ' Calls the base Add function to add the component. MyBase.Add(component) Else ' Throws an exception. Throw New NonWidgetException() End If End Sub
public override void Add(System.ComponentModel.IComponent component) { if (component is Widget) base.Add(component); else { throw(new NonWidgetException()); } }
public void Add(System.ComponentModel.IComponent component) throws NonWidgetException { if ( component instanceof Widget ) { super.Add(component); } else { throw new NonWidgetException() ; } }
加入任何您要新容器加入的新屬性或方法。