Bagikan melalui


Application.FindResource(Object) Metode

Definisi

Mencari sumber daya antarmuka pengguna (UI), seperti Style atau Brush, dengan kunci yang ditentukan, dan melemparkan pengecualian jika sumber daya yang diminta tidak ditemukan (lihat Sumber Daya XAML).

public:
 System::Object ^ FindResource(System::Object ^ resourceKey);
public object FindResource (object resourceKey);
member this.FindResource : obj -> obj
Public Function FindResource (resourceKey As Object) As Object

Parameter

resourceKey
Object

Nama sumber daya yang akan ditemukan.

Mengembalikan

Objek sumber daya yang diminta. Jika sumber daya yang diminta tidak ditemukan, akan ResourceReferenceKeyNotFoundException dilemparkan.

Pengecualian

Sumber daya tidak dapat ditemukan.

Contoh

Contoh berikut menunjukkan cara menggunakan FindResource untuk menemukan sumber daya, dan menangani ResourceReferenceKeyNotFoundException jika sumber daya tidak ditemukan.

void findResourceButton_Click(object sender, RoutedEventArgs e) {
  try {
    object resource = Application.Current.FindResource("UnfindableResource");
  }
  catch (ResourceReferenceKeyNotFoundException ex) {
    MessageBox.Show("Resource not found.");
  }
}
Private Sub findResourceButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
  Try
    Dim resource As Object = Application.Current.FindResource("UnfindableResource")
  Catch ex As ResourceReferenceKeyNotFoundException
    MessageBox.Show("Resource not found.")
  End Try
End Sub

Keterangan

FindResource pertama-tama akan melihat sumber daya cakupan aplikasi untuk sumber daya yang ditentukan. Sumber daya cakupan aplikasi dikelola oleh Application, dan diekspos dari Resources properti . Jika sumber daya yang ditentukan tidak ditemukan dalam kumpulan sumber daya cakupan aplikasi, FindResource maka selanjutnya mencari sumber daya sistem. Sumber daya sistem adalah sumber daya shell yang ditentukan oleh pengguna, dan mencakup warna, font, dan konfigurasi shell. Ini diekspos dari SystemColorsjenis , SystemFonts, dan SystemParameters , masing-masing, sebagai properti statis. Untuk digunakan FindResource untuk memperolehnya, jenis ini juga mengekspos properti kunci sumber daya yang dirancang untuk diteruskan ke FindResource; misalnya, IconWidthKey.

Karena FindResource mengembalikan objek, Anda harus mentransmisikan nilai yang dikembalikan ke jenis yang sesuai jika sumber daya ditemukan.

Penting

Jika Anda memanggil metode ini untuk kunci yang tidak dapat ditemukan, pengecualian akan dilemparkan. Jika Anda tidak ingin menangani pengecualian yang dihasilkan dari panggilan FindResource, panggil TryFindResource sebagai gantinya; TryFindResource mengembalikan null referensi ketika sumber daya yang diminta tidak dapat ditemukan, dan tidak melemparkan pengecualian.

Metode ini aman untuk utas dan dapat dipanggil dari utas apa pun.

Berlaku untuk

Lihat juga