TypeDescriptor.AddProvider Metode

Definisi

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.

type
Type

Dari Type komponen target.

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.

Lihat juga

Berlaku untuk