FrameworkElement.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 resurs med den angivna nyckeln och genererar ett undantag om den begärda resursen inte hittas.
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
Nyckelidentifieraren för den begärda resursen.
Returer
Den begärda resursen. Om ingen resurs med den angivna nyckeln hittades genereras ett undantag. Ett UnsetValue värde kan också returneras i undantagsfallet.
Undantag
resourceKey hittades inte och det finns ingen händelsehanterare för UnhandledException händelsen.
-eller-
resourceKey hittades inte och egenskapen Handled finns false i händelsen UnhandledException .
resourceKey är null.
Exempel
I följande exempel hämtas en namngiven resurs och den omvandlas till en lämplig typ för att fylla en egenskap.
void SetBGByResource(object sender, RoutedEventArgs e)
{
Button b = sender as Button;
b.Background = (Brush)this.FindResource("RainbowBrush");
}
Private Sub SetBGByResource(ByVal sender As Object, ByVal e As RoutedEventArgs)
Dim b As Button = TryCast(sender, Button)
b.Background = CType(Me.FindResource("RainbowBrush"), Brush)
End Sub
Kommentarer
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 anrop FindResourceanropar TryFindResource du i stället.
TryFindResource returnerar null när det inte går att hitta en begärd resurs och inte utlöser ett undantag.
Om resursen inte hittas i det anropande elementet genomsöks det överordnade elementet i det logiska trädet härnäst, sedan programmet, sedan teman och slutligen systemresurser. Den här uppslagsmetoden är identisk med hur trädet genomsöks om en resurs begärdes av en dynamisk resursreferens i markering. Mer information om resurssökning finns i XAML-resurser.
Vanligtvis omvandlar du omedelbart ett FindResource returvärde till den typ av egenskap som du anger med det returnerade resursvärdet.
Resursnycklar är inte nödvändigtvis strängar. Till exempel är formatmallar för kontroller på temanivå avsiktligt nyckelade till Type kontrollens och program- eller sidformat för kontroller använder vanligtvis samma nyckelkonvention. Mer information finns i Formatering och mallning eller XAML-resurser.