IDynamicVisible Antarmuka
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.
Antarmuka IDynamicVisible harus diimplementasikan oleh kelas apa pun yang ingin membatasi visibilitas nilai Enum tertentu berdasarkan status kelas pada saat itu.
Jika kelas berisi properti yang mengekspos Enum dan kelas tersebut mengimplementasikan antarmuka IDynamicVisible, maka itu akan dipanggil untuk setiap properti yang berjenis Enum.
Param konteks dapat digunakan untuk menentukan Enum mana yang dipanggil metode ini. Jika kelas hanya memiliki satu Enum tidak perlu melakukan pemeriksaan ini.
Cara untuk membatasi visibilitas item tertentu adalah dengan hanya menghapus nilai Enum yang tidak diinginkan dari nilai ArrayList. Metode ini dipanggil pada setiap drop-down enum sehingga dimungkinkan untuk mengubah daftar pada setiap menu drop-down. Jika daftar tidak akan berubah setelah awalnya ditentukan penembolokan ArrayList dan mengembalikannya akan berguna.
Perawatan harus dilakukan untuk memastikan bahwa Anda tidak menghapus nilai yang sudah diatur properti Enum. Ini tidak akan menyebabkan kesalahan karena semua nilai Enum masih valid tetapi ketika pengguna mengklik dropdown, mereka tidak akan melihat pilihan saat ini sebagai opsi.
Juga tidak ada nilai baru yang harus ditambahkan ke daftar karena nilai-nilai ini tidak akan dapat dikonversi ke nilai Enum yang valid dan kesalahan akan dilemparkan pada runtime. Jika kontrol yang lebih dinamis diperlukan, pertimbangkan untuk menggunakan desain DynamicValues.
public interface IDynamicVisible
type IDynamicVisible = interface
Public Interface IDynamicVisible
- Turunan
Metode
| Nama | Deskripsi |
|---|---|
| ConfigureVisibleEnumFields(ITypeDescriptorContext, ArrayList) |
Menghapus item dari daftar nilai dan mengembalikan daftar baru tersebut akan mengontrol nilai yang diperlihatkan dalam Enum yang ditentukan dalam konteks. Enum dapat ditentukan dengan kode yang mirip dengan yang berikut jika (konteks. PropertyDescriptor.PropertyType == typeof(myEnum)) |