Application.FindResource(Object) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Söker efter en användargränssnittsresurs (UI), till exempel en Style eller Brush, med den angivna nyckeln, och genererar ett undantag om den begärda resursen inte hittas (se XAML-resurser).
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
Parametrar
- resourceKey
- Object
Namnet på resursen som ska hittas.
Returer
Det begärda resursobjektet. Om den begärda resursen inte hittas genereras en ResourceReferenceKeyNotFoundException .
Undantag
Det går inte att hitta resursen.
Exempel
I följande exempel visas hur du använder FindResource för att hitta en resurs och för att hantera ResourceReferenceKeyNotFoundException om resursen inte hittas.
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
Kommentarer
FindResource söker först efter den angivna resursen i programomfattningsresurserna. Programomfattningsresurser hanteras av Applicationoch exponeras från Resources egenskapen. Om den angivna resursen inte hittas i uppsättningen med programomfattningsresurser FindResource söker du sedan igenom systemresurserna. Systemresurser är gränssnittsresurser som definieras av användaren och innehåller färger, teckensnitt och gränssnittskonfigurationer. Dessa exponeras från typerna SystemColors, SystemFontsrespektive SystemParameters som statiska egenskaper. Om du vill använda FindResource för att hämta dem exponerar de här typerna även resursnyckelegenskaper som är utformade för att skickas till , till FindResourceexempel IconWidthKey.
Eftersom FindResource returnerar ett objekt måste du omvandla det returnerade värdet till rätt typ om resursen hittas.
Important
Om du anropar den här metoden för en nyckel som inte kan hittas genereras ett undantag. Om du inte vill hantera undantag som uppstår vid anropet FindResourceTryFindResource anropar du i stället. TryFindResource Returnerar en null referens när det inte går att hitta en begärd resurs och inte utlöser ett undantag.
Den här metoden är trådsäker och kan anropas från valfri tråd.