CustomXamlResourceLoader Kelas
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.
Memungkinkan pemuatan kamus sumber daya kustom sebagai sumber. Ambil alih GetResource untuk menyediakan logika yang dapat digunakan pengurai XAML untuk mencari sumber daya yang diperlukan pada waktu muat.
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class CustomXamlResourceLoader
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class CustomXamlResourceLoader
Public Class CustomXamlResourceLoader
- Warisan
- Atribut
Persyaratan Windows
Rangkaian perangkat |
Windows 10 (diperkenalkan dalam 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)
|
Keterangan
CustomXamlResourceLoader mendukung penggunaan {CustomResource}
ekstensi markup . Ekstensi markup ini unik untuk kerangka kerja XAML Windows Runtime (tidak ada dalam teknologi XAML pendahulu seperti Windows Presentation Foundation (WPF) dan Microsoft Silverlight.)
Penggunaan {CustomResource}
tidak berfungsi secara default (implementasi dasar GetResource tidak lengkap). Untuk membuat referensi yang valid {CustomResource}
, Anda harus melakukan setiap langkah berikut:
- Mendapatkan kelas kustom dari CustomXamlResourceLoader dan mengambil alih metode GetResource . Jangan memanggil basis dalam implementasi.
- Atur CustomXamlResourceLoader.Current untuk mereferensikan kelas Anda dalam logika inisialisasi. Ini harus terjadi sebelum XAML tingkat halaman apa pun yang menyertakan
{CustomResource}
penggunaan ekstensi dimuat. Satu tempat untuk mengatur CustomXamlResourceLoader.Current ada di konstruktor subkelas Aplikasi yang dihasilkan untuk Anda di templat App.xaml code-behind. - Sekarang Anda dapat menggunakan
{CustomResource}
ekstensi di XAML yang dimuat aplikasi Anda sebagai halaman, atau dari dalam kamus sumber daya XAML.
Ekstensi markup {CustomResource} dapat digunakan dari XAML dengan cara yang sama dengan ekstensi markup {StaticResource}, yang melakukan pencarian sumber daya bawaan dari berbagai lokasi ResourceDictionary . Perbedaannya adalah bahwa aplikasi itu sendiri mengimplementasikan logika pencarian sumber daya untuk penggunaan ekstensi markup {CustomResource} dengan menyediakan pemuat sumber daya kustom. Untuk mengimplementasikan pemuat sumber daya kustom, aplikasi harus menyediakan kelas yang berasal dari CustomXamlResourceLoader dan mengambil alih metode GetResource . Aplikasi harus mendaftarkan pemuat sumber daya kustomnya dengan mengatur properti statis CustomXamlResourceLoader.Current ke instans kelas pemuat sumber daya kustomnya. Pendaftaran ini harus dilakukan pada utas UI XAML sebelum penguraian XAML yang menggunakan ekstensi markup {CustomResource}. Jika aplikasi menggunakan beberapa utas UI, pendaftaran terpisah harus dilakukan pada masing-masing utas.
Cara CustomXamlResourceLoader menyimpan sumber dayanya mungkin tidak terkait dengan ResourceDictionary sama sekali. Biasanya, selain penimpaan yang diperlukan, kelas CustomXamlResourceLoader Anda akan menyediakan metode internal atau publik yang memungkinkan penyimpanan, kunci, dan bekerja dengan item sumber daya dalam koleksi yang mendasar.
Konstruktor
CustomXamlResourceLoader() |
Menginisialisasi instans baru kelas CustomXamlResourceLoader . |
Properti
Current |
Mengembalikan instans CustomXamlResourceLoader aktif. |
Metode
GetResource(String, String, String, String) |
Saat ditimpa dalam kelas turunan, menentukan logika pencarian sumber daya untuk CustomXamlResourceLoader ini. Mengingat ID sumber daya dan beberapa informasi jenis tentang hasil yang diharapkan, mengembalikan sumber daya yang diminta. |