共用方式為


在 Visual Basic 中建立和使用元件

元件是實作System.ComponentModel.IComponent界面的類別,或者是直接或間接繼承自實作IComponent的類別。 .NET 元件是可重複使用的物件,可以與其他物件互動,並提供外部資源和設計時間支援的控制。

元件的重要功能是其可設計,這表示可以在Visual Studio集成開發環境中使用屬於元件的類別。 元件可以新增至工具箱、拖放到窗體上,並在設計介面上操作。 元件的基本設計時間支援內建於 .NET 中。 元件開發人員不需要執行任何其他工作,才能利用基底設計時間功能。

控件與元件類似,因為兩者都是可設計的。 不過,控件會提供使用者介面,而元件則不會。 控制項必須衍生自其中一個基底控制項類別: ControlControl

建立元件的時機

如果您的類別將用於設計介面上(例如 Windows Forms 或 Web Forms 設計工具),但沒有使用者介面,它應該是元件並實作IComponent,或衍生自直接或間接實作IComponent的類別。

ComponentMarshalByValueComponent 類別是 IComponent 介面的基底實作。 這些類別之間的主要差異在於類別 Component 是以傳址方式封送處理,而 IComponent 是由值封送處理。 下列清單提供實施者的一般指導方針。

  • 如果您的元件需要以傳址方式封送處理,請衍生自 Component

  • 如果您的元件需要依值序列化,請繼承自 MarshalByValueComponent

  • 如果您的元件因為單一繼承而無法衍生自其中一個基底實作,請實作 IComponent

元件類別

System.ComponentModel命名空間提供類別,這些類別可用來實作元件和控件的運行時間和設計時間行為。 這個命名空間包含實作屬性和型別轉換器的基類和介面、系結至數據源和授權元件。

核心元件類別包括:

元件授權的一些類別包括:

通常用來描述和保存元件的類別。

針對控制項和元件撰寫進行疑難排解
說明如何修正常見問題。

另請參閱