Compartir a través de


FrameworkElement.FindResource(Object) Método

Definición

Busca un recurso con la clave especificada y produce una excepción si no se encuentra el recurso solicitado.

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

Parámetros

resourceKey
Object

Identificador de clave para el recurso solicitado.

Devoluciones

Recurso solicitado. Si no se encuentra un recurso con la clave proporcionada, se produce una excepción. También se podría devolver un valor UnsetValue en caso de excepción.

Excepciones

No se encontró resourceKey y un controlador de eventos no existe para el evento UnhandledException.

o bien

No se encontró resourceKey y la propiedad Handled es false en el evento UnhandledException.

resourceKey es null.

Ejemplos

En el ejemplo siguiente se obtiene un recurso con nombre y se convierte en un tipo adecuado para rellenar una propiedad.

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

Comentarios

Importante

Si llama a este método para una clave que no se encuentra, se produce una excepción. Si no desea controlar las excepciones resultantes de llamar a FindResource, llame TryFindResource a en su lugar. TryFindResource devuelve null cuando no se encuentra un recurso solicitado y no produce una excepción.

Si el recurso no se encuentra en el elemento que realiza la llamada, se busca en el elemento primario del árbol lógico siguiente, la aplicación, los temas y, por último, los recursos del sistema. Esta metodología de búsqueda es idéntica a la forma en que se busca el árbol si una referencia de recursos dinámicos solicitó un recurso en el marcado. Para obtener más información sobre la búsqueda de recursos, consulta Recursos XAML.

Normalmente, convierte inmediatamente un FindResource valor devuelto al tipo de la propiedad que establece con el valor de recurso devuelto.

Las claves de recursos no son necesariamente cadenas. Por ejemplo, los estilos de los controles en el nivel de tema se claven deliberadamente para el Type del control, y los estilos de aplicación o página para los controles suelen usar esta misma convención de clave. Para obtener más información, consulta Aplicar estilos y plantillas o recursos XAML.

Se aplica a

Consulte también