Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Komponen adalah kelas yang mengimplementasikan System.ComponentModel.IComponent antarmuka atau yang berasal secara langsung atau tidak langsung dari kelas yang mengimplementasikan IComponent. Komponen .NET adalah objek yang dapat digunakan kembali, dapat berinteraksi dengan objek lain, dan memberikan kontrol atas sumber daya eksternal dan dukungan waktu desain.
Fitur penting dari komponen adalah komponen tersebut dapat didesain, yang berarti bahwa kelas yang merupakan komponen dapat digunakan di Lingkungan Pengembangan Terintegrasi Visual Studio. Komponen dapat ditambahkan ke Kotak Alat, diseret dan dijatuhkan ke formulir, dan dimanipulasi pada permukaan desain. Dukungan waktu desain dasar untuk komponen sudah terintegrasi dalam .NET. Pengembang komponen tidak perlu melakukan pekerjaan tambahan apa pun untuk memanfaatkan fungsionalitas waktu desain dasar.
Kontrol mirip dengan komponen, karena keduanya dapat didesain. Namun, kontrol menyediakan antarmuka pengguna, sementara komponen tidak. Kontrol harus berasal dari salah satu kelas kontrol dasar: Control atau Control.
Kapan Membuat Komponen
Jika kelas Anda akan digunakan pada permukaan desain (seperti Windows Forms atau Web Forms Designer) tetapi tidak memiliki antarmuka pengguna, itu harus menjadi komponen dan mengimplementasikan IComponent, atau berasal dari kelas yang secara langsung atau tidak langsung mengimplementasikan IComponent.
Kelas Component dan MarshalByValueComponent adalah implementasi IComponent dasar antarmuka. Perbedaan utama antara kelas-kelas ini adalah bahwa kelas Component dikelola oleh referensi, sementara kelas IComponent dikelola berdasarkan nilai. Daftar berikut ini menyediakan panduan luas untuk pelaksana.
Jika komponen Anda perlu dimasukkan berdasarkan referensi, turunkan dari Component.
Jika komponen Anda perlu diproses berdasarkan nilai, turunkan dari MarshalByValueComponent.
Jika komponen Anda tidak dapat berasal dari salah satu implementasi dasar karena warisan tunggal, terapkan IComponent.
Kelas Komponen
Namespace System.ComponentModel menyediakan kelas yang digunakan untuk mengimplementasikan perilaku run-time dan waktu desain komponen dan pengendalian. Namespace ini mencakup kelas dasar dan antarmuka untuk menerapkan atribut, konverter tipe, komponen lisensi, dan mengikat ke sumber data.
Kelas komponen inti adalah:
Component. Implementasi dasar untuk IComponent antarmuka. Kelas ini memungkinkan berbagi objek antar aplikasi.
MarshalByValueComponent. Implementasi dasar untuk IComponent antarmuka.
Container. Implementasi dasar untuk IContainer antarmuka. Kelas ini merangkum nol atau lebih komponen.
Beberapa kelas yang digunakan untuk lisensi komponen adalah:
License. Kelas dasar abstrak untuk semua lisensi. Lisensi diberikan ke instans komponen tertentu.
LicenseManager. Menyediakan properti dan metode untuk menambahkan lisensi ke komponen dan untuk mengelola LicenseProvider.
LicenseProvider. Kelas dasar abstrak untuk menerapkan penyedia lisensi.
LicenseProviderAttribute. Menentukan kelas LicenseProvider yang akan digunakan dengan satu kelas lain.
Kelas yang umumnya digunakan untuk menjelaskan dan mempertahankan komponen.
TypeDescriptor. Menyediakan informasi tentang karakteristik untuk komponen, seperti atribut, properti, dan peristiwanya.
EventDescriptor. Menyediakan informasi tentang suatu peristiwa.
PropertyDescriptor. Menyediakan informasi tentang properti.
Bagian Terkait
Kontrol Pemecahan Masalah dan Penulisan Komponen
Menjelaskan cara memperbaiki masalah umum.