Tworzenie składników i korzystanie z nich w Visual Basic

Składnik to klasa, która implementuje System.ComponentModel.IComponent interfejs lub który pochodzi bezpośrednio lub pośrednio z klasy, która implementuje IComponentelement . Składnik .NET jest obiektem wielokrotnego użytku, może wchodzić w interakcje z innymi obiektami i zapewnia kontrolę nad zasobami zewnętrznymi i obsługą czasu projektowania.

Ważną cechą składników jest to, że można je zaprojektować, co oznacza, że klasa, która jest składnikiem, może być używana w zintegrowanym środowisku projektowym programu Visual Studio. Składnik można dodać do przybornika, przeciągać i upuszczać na formularzu oraz manipulować na powierzchni projektowej. Podstawowa obsługa czasu projektowania składników jest wbudowana w platformę .NET. Deweloper składników nie musi wykonywać żadnych dodatkowych prac, aby korzystać z podstawowych funkcji czasu projektowania.

Kontrolka jest podobna do składnika, ponieważ obie są projektowalne. Jednak kontrolka zapewnia interfejs użytkownika, a składnik nie. Kontrolka musi pochodzić z jednej z podstawowych klas kontrolek: Control lub Control.

Kiedy utworzyć składnik

Jeśli klasa będzie używana na powierzchni projektowej (takiej jak Windows Forms lub Web Forms Projektant), ale nie ma interfejsu użytkownika, powinien być składnikiem i zaimplementować IComponentelement lub pochodzić z klasy, która bezpośrednio lub pośrednio implementuje IComponentelement .

Klasy Component i MarshalByValueComponent to podstawowe implementacje interfejsu IComponent . Główną różnicą między tymi klasami jest to, że Component klasa jest określana przez odwołanie, podczas gdy IComponent jest określana według wartości. Poniższa lista zawiera szerokie wytyczne dotyczące implementatorów.

  • Jeśli składnik musi być rozsyłany według odwołania, należy opierać się na elemencie Component.

  • Jeśli składnik musi być rozsyłany według wartości, pochodzi z .MarshalByValueComponent

  • Jeśli składnik nie może pochodzić z jednej z podstawowych implementacji z powodu pojedynczego dziedziczenia, zaimplementuj element IComponent.

Klasy składników

System.ComponentModel Przestrzeń nazw udostępnia klasy, które są używane do implementowania zachowania czasu wykonywania i czasu projektowania składników i kontrolek. Ta przestrzeń nazw obejmuje klasy podstawowe i interfejsy do implementowania atrybutów i konwerterów typów, powiązania ze źródłami danych i składnikami licencjonowania.

Podstawowe klasy składników to:

Niektóre klasy używane do licencjonowania składników to:

Klasy często używane do opisywania i utrwalania składników.

Rozwiązywanie problemów związanych z kontrolkami oraz tworzeniem składników
Objaśnienie sposobu rozwiązywania typowych problemów.

Zobacz też