PropertySet Kelas

Definisi

Mewakili kumpulan properti, yang merupakan sekumpulan objek PropertyValue dengan kunci string.

public ref class PropertySet sealed : IIterable<IKeyValuePair<Platform::String ^, Platform::Object ^> ^>, IMap<Platform::String ^, Platform::Object ^>, IObservableMap<Platform::String ^, Platform::Object ^>, IPropertySet
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.FoundationContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class PropertySet final : IIterable<IKeyValuePair<winrt::hstring, IInspectable const&>>, IMap<winrt::hstring, IInspectable const&>, IObservableMap<winrt::hstring, IInspectable const&>, IPropertySet
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.FoundationContract")]
class PropertySet final : IIterable<IKeyValuePair<winrt::hstring, IInspectable const&>>, IMap<winrt::hstring, IInspectable const&>, IObservableMap<winrt::hstring, IInspectable const&>, IPropertySet
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.FoundationContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class PropertySet : IDictionary<string,object>, IEnumerable<KeyValuePair<string,object>>, IObservableMap<string,object>, IPropertySet
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.FoundationContract")]
public sealed class PropertySet : IDictionary<string,object>, IEnumerable<KeyValuePair<string,object>>, IObservableMap<string,object>, IPropertySet
function PropertySet()
Public NotInheritable Class PropertySet
Implements IDictionary(Of String, Object), IEnumerable(Of KeyValuePair(Of String, Object)), IObservableMap(Of String, Object), IPropertySet
Warisan
Object Platform::Object IInspectable PropertySet
Atribut
Penerapan
IMap<K,V> IDictionary<K,V> IMap<String,Object> IDictionary<String,Object> IMap<Platform::String,Platform::Object> IMap<winrt::hstring,IInspectable> IIterable<IKeyValuePair<K,V>> IEnumerable<KeyValuePair<K,V>> IIterable<IKeyValuePair<String,Object>> IEnumerable<KeyValuePair<String,Object>> IIterable<IKeyValuePair<Platform::String,Platform::Object>> IIterable<IKeyValuePair<winrt::hstring,IInspectable>> IObservableMap<String,Object> IObservableMap<Platform::String,Platform::Object> IObservableMap<winrt::hstring,IInspectable> IPropertySet

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.FoundationContract (diperkenalkan dalam v1.0)

Keterangan

Kelas ini mengimplementasikan peta (antarmuka IMap<K,V> ) dengan kunci jenis String dan nilai jenis PropertyValue. Jenis PropertySet memungkinkan berbagai API Runtime Windows untuk mengembalikan kumpulan nilai campuran yang masih dapat diulang atau diperiksa menggunakan API koleksi umum PropertySet, yang cocok dengan IMap<K,V>, IDictionary<TKey,TValue>, atau teknik pengumpulan dan enumerasi JavaScript, tergantung pada bahasa mana yang digunakan aplikasi Anda.

PropertyValue adalah kelas yang mendukung sejumlah besar metode Create* statis yang membuat nilai yang sengaja tidak ditiru dari input yang biasanya merupakan jenis nilai atau primitif (Boolean, angka dan sebagainya) atau array dari nilai-nilai tersebut. Setelah salah satu metode PropertyValue statis dipanggil, nilai pengembaliannya dapat diperlakukan sebagai instans PropertyValue (namun metode Create* secara teknis mengembalikan Objek jika Anda melihat tanda tangan).

Namun, Anda biasanya tidak menggunakan PropertySet dengan cara yang mengharuskan Anda mengisi nilai PropertyValue dalam set sendiri. Sebagai gantinya, Anda biasanya mendapatkan PropertySet yang diisi sebagai nilai pengembalian dari API Windows Runtime yang menyediakan koleksi di mana jenis nilai di dalamnya mungkin dicampur, tetapi masih terkait satu sama lain berdasarkan asal atau skenario. Misalnya, nilai LocalSettings dan RoamingSettings yang Anda dapatkan saat mengambil data aplikasi berjenis ApplicationDataContainer, dan masing-masing berisi PropertySet sebagai nilai properti Nilainya . Saat berinteraksi dengan data aplikasi yang menyimpan pengaturan, Anda biasanya mendapatkan koleksi dari ApplicationDataContainer.Values. Kemudian Anda dapat:

  • iterasi melalui set menggunakan sintaks iterasi yang sesuai
  • gunakan HasKey/ContainsKey untuk memverifikasi keberadaan PropertyValue dalam set
  • gunakan Pencarian atau pengindeks Item untuk mengambil item setelah Anda mengetahuinya ada

Untuk skenario seperti bekerja dengan data aplikasi, saat Anda memiliki PropertySet, Anda memilikinya berdasarkan referensi, jadi jika Anda menambahkan item ke PropertySet menggunakan Tambahkan/Sisipkan item ini akan ditambahkan ke data aplikasi, dan menghapus item akan menghapusnya dari data aplikasi. Semua perubahan tersebut kemudian dibagikan melalui mekanisme data aplikasi, jika dilakukan pada RoamingSettings.

Ada API Windows Runtime lain yang menggunakan nilai PropertySet sebagai nilai langsung daripada dibungkus di kelas lain seperti ApplicationDataContainer. Misalnya, CoreApplication.Properties mengembalikan PropertySet.

Berbagai properti yang melaporkan info dari media dan perangkat menggunakan PropertySet, misalnya PlayToReceiver.Properties. Namun, ada set properti media/perangkat lain yang tidak menggunakan PropertySet dan sebaliknya menggunakan MediaPropertySet, karena pengidentifikasi untuk properti tersebut lebih baik diwakili ketika dikunci sebagai GUID daripada string.

Dalam banyak kasus di mana API Runtime Windows menggunakan PropertySet sebagai nilai, api tersebut benar-benar ditampilkan sebagai IPropertySet di tanda tangan. PropertySet dapat dianggap sebagai implementasi praktis IPropertySet yang siap digunakan oleh kode aplikasi. Kode JavaScript dapat memperlakukan nilai IPropertySet seolah-olah mengimplementasikan prototipe PropertySet.

Daftar anggota koleksi

Untuk JavaScript, PropertySet mendukung penggunaan indeks untuk mengakses item.

Konstruktor

PropertySet()

Membuat dan menginisialisasi instans baru dari kumpulan properti.

Properti

Size

Mendapatkan jumlah item yang terkandung dalam kumpulan properti.

Metode

Clear()

Menghapus semua item dari kumpulan properti.

First()

Mengembalikan iterator untuk menghitung item dalam kumpulan properti.

GetView()

Mendapatkan tampilan set properti yang tidak dapat diubah.

HasKey(String)

Menunjukkan apakah set properti memiliki item dengan kunci yang ditentukan.

Insert(String, Object)

Menambahkan item ke kumpulan properti.

Lookup(String)

Mengambil nilai untuk kunci yang ditentukan.

Remove(String)

Menghapus item dari kumpulan properti.

Acara

MapChanged

Terjadi ketika peta yang dapat diamati telah berubah.

Berlaku untuk

Lihat juga