FrameworkElement.FindResource(Object) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Zoekt naar een resource met de opgegeven sleutel en genereert een uitzondering als de aangevraagde resource niet wordt gevonden.
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
Parameters
- resourceKey
- Object
De sleutel-id voor de aangevraagde resource.
Retouren
De aangevraagde resource. Als er geen resource met de opgegeven sleutel is gevonden, wordt er een uitzondering gegenereerd. Er kan ook een UnsetValue waarde worden geretourneerd in het uitzonderingsscenario.
Uitzonderingen
resourceKey is niet gevonden en er bestaat geen gebeurtenis-handler voor de UnhandledException gebeurtenis.
– of –
resourceKey is niet gevonden en de Handled eigenschap bevindt zich false in de UnhandledException gebeurtenis.
resourceKey is null.
Voorbeelden
In het volgende voorbeeld wordt een benoemde resource verkregen en naar een geschikt type geconverteerd om een eigenschap in te vullen.
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
Opmerkingen
Important
Als u deze methode aanroept voor een sleutel die niet kan worden gevonden, wordt er een uitzondering gegenereerd. Als u geen uitzonderingen wilt verwerken die het gevolg zijn van bellen FindResource, roept TryFindResource u in plaats daarvan aan.
TryFindResource retourneert null wanneer een aangevraagde resource niet kan worden gevonden en genereert geen uitzondering.
Als de resource niet wordt gevonden op het aanroepende element, wordt het bovenliggende element in de logische structuur vervolgens doorzocht, vervolgens de toepassing, thema's en ten slotte systeemresources. Deze opzoekmethode is identiek aan de manier waarop de structuur wordt doorzocht als een resource is aangevraagd door een dynamische resourcereferentie in markeringen. Zie XAML-resources voor meer informatie over het opzoeken van resources.
Normaal gesproken cast u onmiddellijk een FindResource retourwaarde naar het type eigenschap dat u instelt met de geretourneerde resourcewaarde.
Resourcesleutels zijn niet noodzakelijkerwijs tekenreeksen. Stijlen voor besturingselementen op themaniveau worden bijvoorbeeld opzettelijk aan het Type besturingselement gekoppeld en toepassings- of paginastijlen voor besturingselementen gebruiken doorgaans dezelfde sleutelconventie. Zie Stijlen en sjablonen of XAML-resources voor meer informatie.