FrameworkElement.FindResource(Object) Méthode

Définition

Recherche une ressource avec la clé spécifiée et lève une exception si la ressource demandée est introuvable.

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

Paramètres

resourceKey
Object

Identificateur de clé de la ressource demandée.

Retours

Ressource demandée. Si aucune ressource avec la clé fournie n’a été trouvée, une exception est levée. Une UnsetValue valeur peut également être retournée dans le cas d’exception.

Exceptions

resourceKey a été introuvable et un gestionnaire d’événements n’existe pas pour l’événement UnhandledException .

- ou -

resourceKey a été introuvable et la Handled propriété est false dans l’événement UnhandledException .

resourceKey a la valeur null.

Exemples

L’exemple suivant obtient une ressource nommée et la convertit en un type approprié pour remplir une propriété.

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

Remarques

Important

Si vous appelez cette méthode pour une clé introuvable, une exception est levée. Si vous ne souhaitez pas gérer les exceptions résultant de l’appel FindResource, appelez TryFindResource à la place. TryFindResource retourne null lorsqu’une ressource demandée est introuvable et ne lève pas d’exception.

Si la ressource est introuvable sur l’élément appelant, l’élément parent de l’arborescence logique est recherché ensuite, puis l’application, les thèmes et enfin les ressources système. Cette méthodologie de recherche est identique à la façon dont l’arborescence est recherchée si une ressource a été demandée par une référence de ressource dynamique dans le balisage. Pour plus d’informations sur la recherche de ressources, consultez Ressources XAML.

En règle générale, vous convertissez immédiatement une FindResource valeur de retour vers le type de la propriété que vous définissez avec la valeur de ressource retournée.

Les clés de ressource ne sont pas nécessairement des chaînes. Par exemple, les styles des contrôles au niveau du thème sont délibérément clés pour le Type contrôle, et les styles d’application ou de page pour les contrôles utilisent généralement cette même convention de clé. Pour plus d’informations, consultez Styles et création de modèles ou ressources XAML.

S’applique à

Voir aussi