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.
Menyediakan nilai untuk atribut properti XAML apa pun dengan mencari referensi ke sumber daya yang sudah ditentukan. Perilaku pencarian untuk sumber daya tersebut dianalogikan dengan pencarian waktu muat, yang akan mencari sumber daya yang sebelumnya dimuat dari markup halaman XAML saat ini serta sumber aplikasi lainnya, dan akan menghasilkan nilai sumber daya tersebut sebagai nilai properti dalam objek run-time.
Penggunaan Atribut XAML
<object property="{StaticResource key}" ... />
Penggunaan Elemen Objek XAML
<object>
<object.property>
<StaticResource ResourceKey="key" ... />
</object.property>
</object>
Nilai XAML
| Nilai | Deskripsi |
|---|---|
key |
Kunci untuk sumber daya yang diminta. Kunci ini awalnya ditetapkan oleh x:Key Directive jika sumber daya dibuat dalam markup, atau disediakan sebagai parameter key saat memanggil ResourceDictionary.Add jika sumber daya dibuat dalam kode. |
Komentar
Penting
StaticResource tidak boleh mencoba membuat referensi ke depan ke sumber daya yang didefinisikan lebih jauh secara leksikal dalam file XAML. Mencoba untuk melakukan hal tersebut tidak didukung, dan bahkan jika referensi semacam itu tidak gagal, usaha untuk melakukan referensi maju akan menyebabkan penalti performa waktu muat ketika pencarian dilakukan pada tabel hash internal yang mewakili ResourceDictionary. Untuk hasil terbaik, sesuaikan komposisi kamus sumber daya Anda sehingga referensi penerusan dapat dihindari. Jika Anda tidak dapat menghindari referensi penerusan, gunakan DynamicResource Markup Extension sebagai alternatif.
Yang ditentukan ResourceKey harus sesuai dengan sumber daya yang ada, yang diidentifikasi dengan x:Key Directive pada tingkat tertentu dalam halaman, aplikasi, tema kontrol yang tersedia, sumber daya eksternal, atau sumber daya sistem. Pencarian sumber daya terjadi dalam urutan tersebut. Untuk informasi selengkapnya tentang perilaku pencarian sumber daya untuk sumber daya statis dan dinamis, lihat Sumber Daya XAML.
Kunci sumber daya dapat berupa string apa pun yang ditentukan dalam Tata Bahasa XamlName. Kunci sumber daya juga dapat berupa jenis objek lain, seperti Type. Kunci Type sangat mendasar tentang bagaimana kontrol dapat ditata berdasarkan tema, melalui kunci gaya implisit. Untuk informasi selengkapnya, lihat Gambaran Umum Penulisan Kontrol .
Cara deklaratif alternatif untuk mereferensikan sumber daya adalah sebagai DynamicResource Markup Extension.
Sintaks atribut adalah sintaks yang paling umum digunakan dengan ekstensi markup ini. Token string yang disediakan setelah string pengidentifikasi StaticResource ditetapkan sebagai nilai ResourceKey dari kelas ekstensi StaticResourceExtension yang sesuai.
StaticResource dapat digunakan dalam sintaks elemen objek. Dalam hal ini, menentukan nilai properti ResourceKey diperlukan.
StaticResource juga dapat digunakan dalam penggunaan atribut verbose yang menentukan properti ResourceKey sebagai pasangan properti=nilai:
<object property="{StaticResource ResourceKey=key}" ... />
Penggunaan verbose sering berguna untuk ekstensi yang memiliki lebih dari satu properti yang dapat diatur, atau jika beberapa properti bersifat opsional. Karena StaticResource hanya memiliki satu properti yang dapat diatur, yang diperlukan, penggunaan yang berlebihan ini tidak umum.
Dalam implementasi prosesor WPF XAML, penanganan untuk ekstensi markup ini ditentukan oleh kelas StaticResourceExtension.
StaticResource adalah ekstensi markup. Ekstensi markup biasanya diimplementasikan ketika ada persyaratan untuk meloloskan nilai atribut menjadi selain nilai harfiah atau nama handler, dan persyaratannya lebih global daripada hanya menempatkan pengonversi jenis pada jenis atau properti tertentu. Semua ekstensi markup di XAML menggunakan { dan } karakter dalam sintaks atributnya, yang merupakan konvensi di mana prosesor XAML mengenali bahwa ekstensi markup harus memproses atribut . Untuk informasi selengkapnya, lihat Ekstensi Markup danWPF XAML .
Lihat juga
- Gaya dan Penggunaan Templat
- XAML dalam WPF
- Ekstensi Markup dan XAML WPF
- Sumber Daya XAML
- Sumber Daya dan Kode
.NET Desktop feedback