TypeDescriptor.AddProvider Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menambahkan penyedia deskripsi tipe ke daftar penyedia untuk pendeskripsi tipe ini.
Overload
AddProvider(TypeDescriptionProvider, Object) |
Menambahkan penyedia deskripsi jenis untuk satu instans komponen. |
AddProvider(TypeDescriptionProvider, Type) |
Menambahkan penyedia deskripsi jenis untuk kelas komponen. |
AddProvider(TypeDescriptionProvider, Object)
- Sumber:
- TypeDescriptor.cs
- Sumber:
- TypeDescriptor.cs
- Sumber:
- TypeDescriptor.cs
Menambahkan penyedia deskripsi jenis untuk satu instans komponen.
public:
static void AddProvider(System::ComponentModel::TypeDescriptionProvider ^ provider, System::Object ^ instance);
public static void AddProvider (System.ComponentModel.TypeDescriptionProvider provider, object instance);
static member AddProvider : System.ComponentModel.TypeDescriptionProvider * obj -> unit
Public Shared Sub AddProvider (provider As TypeDescriptionProvider, instance As Object)
Parameter
- provider
- TypeDescriptionProvider
yang TypeDescriptionProvider akan ditambahkan.
- instance
- Object
Instans komponen target.
Pengecualian
Salah satu atau kedua parameternya adalah null
.
Keterangan
Metode ini AddProvider(TypeDescriptionProvider, Object) menambahkan penyedia deskripsi jenis yang menyediakan informasi jenis untuk satu instans komponen. Jika penyedia ditambahkan oleh metode ini, metode penyedia CreateInstance tidak akan dipanggil karena instans sudah ada.
Metode ini tidak mempertahankan referensi keras ke komponen, sehingga tidak mencegah komponen diselesaikan.
Dimungkinkan untuk menambahkan beberapa penyedia deskripsi jenis untuk jenis atau objek yang sama. Jika ini terjadi, penyedia deskripsi jenis pertama yang ditemui yang menyediakan informasi jenis akan digunakan secara eksklusif. Karena penyedia informasi jenis disimpan dalam tumpukan, penyedia terakhir yang ditambahkan akan menjadi yang pertama dikueri. Perilaku ini memungkinkan AddProvider(TypeDescriptionProvider, Object) metode dan RemoveProvider yang akan digunakan untuk mendorong dan memunculkan penyedia deskripsi jenis sesuai kebutuhan untuk skenario tertentu.
Jika berhasil, metode ini memanggil Refresh(Object) metode pada instance
parameter .
Catatan
Dua versi metode ini menghasilkan hasil dengan cakupan yang berbeda. Metode AddProvider yang mengambil Object parameter hanya memengaruhi instans tunggal komponen yang ditentukan. Sebaliknya, kelebihan beban lainnya, yang mengambil Type parameter, memengaruhi semua instans komponen yang dijelaskan oleh jenis tersebut.
AddProviderTransparent(TypeDescriptionProvider, Object) Gunakan metode jika Anda perlu memanggil dari kode tepercaya sebagian.
Lihat juga
Berlaku untuk
AddProvider(TypeDescriptionProvider, Type)
- Sumber:
- TypeDescriptor.cs
- Sumber:
- TypeDescriptor.cs
- Sumber:
- TypeDescriptor.cs
Menambahkan penyedia deskripsi jenis untuk kelas komponen.
public:
static void AddProvider(System::ComponentModel::TypeDescriptionProvider ^ provider, Type ^ type);
public static void AddProvider (System.ComponentModel.TypeDescriptionProvider provider, Type type);
static member AddProvider : System.ComponentModel.TypeDescriptionProvider * Type -> unit
Public Shared Sub AddProvider (provider As TypeDescriptionProvider, type As Type)
Parameter
- provider
- TypeDescriptionProvider
yang TypeDescriptionProvider akan ditambahkan.
Pengecualian
Salah satu atau kedua parameternya adalah null
.
Keterangan
Metode ini AddProvider(TypeDescriptionProvider, Type) menambahkan penyedia deskripsi jenis yang menyediakan informasi jenis untuk kelas yang ditentukan, kelas turunan, dan semua instans jenis ini.
Catatan
Parameter type
dapat berupa jenis apa pun, termasuk antarmuka. Misalnya, untuk memberikan jenis kustom dan informasi instans untuk semua komponen, Anda akan menentukan typeof(IComponent)
. Meneruskan typeof(object)
akan memanggil penyedia untuk menyediakan informasi jenis untuk semua jenis.
Metode ini tidak mempertahankan referensi keras ke objek apa pun, sehingga tidak mencegah objek diselesaikan.
Dimungkinkan untuk menambahkan beberapa penyedia deskripsi jenis untuk jenis atau objek yang sama. Jika ini terjadi, penyedia deskripsi jenis pertama yang ditemui yang menyediakan informasi jenis akan digunakan secara eksklusif. Karena penyedia informasi jenis disimpan dalam tumpukan, penyedia terakhir yang ditambahkan akan menjadi yang pertama dikueri. Perilaku ini memungkinkan AddProvider(TypeDescriptionProvider, Type) metode dan RemoveProvider yang akan digunakan untuk mendorong dan memunculkan penyedia deskripsi jenis sesuai kebutuhan untuk skenario tertentu.
Jika berhasil, metode ini memanggil Refresh(Type) metode pada type
parameter .
Catatan
Dua versi metode ini menghasilkan hasil dengan cakupan yang berbeda. Metode AddProvider yang mengambil Object parameter hanya memengaruhi instans tunggal komponen yang ditentukan. Sebaliknya, kelebihan beban lainnya, yang mengambil Type parameter, memengaruhi semua instans komponen yang dijelaskan oleh jenis tersebut.
AddProviderTransparent(TypeDescriptionProvider, Type) Gunakan metode jika Anda perlu memanggil dari kode tepercaya sebagian.