Vytváření a používání součástí v jazyce Visual Basic
Komponenta je třída, která implementuje rozhraní nebo která je přímo nebo nepřímo odvozena z System.ComponentModel.IComponent třídy, která implementuje IComponent . Komponenta .NET je objekt, který je možné znovu použít, může pracovat s jinými objekty a poskytuje kontrolu nad externími prostředky a podporou doby návrhu.
Důležitou funkcí komponent je jejich návrh, což znamená, že třídu, která je komponentou, lze použít v integrovaném vývojovém prostředí Visual Studio prostředí. Komponentu lze přidat do panelu nástrojů, přetáhnout na formulář a manipulovat s ní na návrhové ploše. Základní podpora v době návrhu pro komponenty je integrovaná do .NET. Vývojář komponent nemusí dělat žádnou další práci, aby využil základní funkce návrhu.
Ovládací prvek se podobá komponentě, protože obojí je možné navrhnout. Ovládací prvek však poskytuje uživatelské rozhraní, zatímco komponenta nikoli. Ovládací prvek musí být odvozen z jedné ze základních tříd ovládacích prvků: Control nebo Control .
Kdy vytvořit komponentu
Pokud se vaše třída bude používat na návrhové ploše (například Windows Forms nebo Web Forms Designer), ale nemá žádné uživatelské rozhraní, mělo by to být komponenta a implementovat , nebo odvodit z třídy, která přímo nebo nepřímo implementuje IComponent IComponent .
Třídy Component MarshalByValueComponent a jsou základní implementace IComponent rozhraní. Hlavním rozdílem mezi těmito třídami je, Component že třída je zařazena podle odkazu, zatímco je IComponent zařazena podle hodnoty. Následující seznam obsahuje obecné pokyny pro implementátory.
Pokud vaše komponenta musí být zařazena podle odkazu, odvodte z Component .
Pokud vaše komponenta musí být zařazena podle hodnoty, odvodte z MarshalByValueComponent .
Pokud vaše komponenta nemůže být odvozena z jedné ze základních implementací kvůli jednoduché dědičnosti, implementujte IComponent .
Třídy komponent
Obor názvů poskytuje třídy, které se používají k implementaci chování za běhu a návrhu komponent a System.ComponentModel ovládacích prvků. Tento obor názvů obsahuje základní třídy a rozhraní pro implementaci atributů a převaděčů typů, vazbu na zdroje dat a komponenty licencování.
Základní třídy komponent:
Component. Základní implementace IComponent rozhraní. Tato třída umožňuje sdílení objektů mezi aplikacemi.
MarshalByValueComponent. Základní implementace IComponent rozhraní.
Container. Základní implementace IContainer rozhraní. Tato třída zapouzdřuje nula nebo více součástí.
Mezi třídy používané pro licencování komponent, které se používají:
License. Abstraktní základní třída pro všechny licence. Licence je udělena konkrétní instanci komponenty.
LicenseManager. Poskytuje vlastnosti a metody pro přidání licence ke komponentě a pro správu LicenseProvider .
LicenseProvider. Abstraktní základní třída pro implementaci poskytovatele licencí.
LicenseProviderAttribute. Určuje LicenseProvider třídu, která se má použít s třídou.
Třídy běžně používané pro popisování a zachování komponent.
TypeDescriptor. Poskytuje informace o vlastnostech komponenty, jako jsou její atributy, vlastnosti a události.
EventDescriptor. Poskytuje informace o události.
PropertyDescriptor. Poskytuje informace o vlastnosti.
Související oddíly
Řešení potíží s vytvářením ovládacích prvků a komponent
Vysvětluje, jak vyřešit běžné problémy.