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 del recurso solicitado.

Devoluciones

Recurso solicitado. Si no se encontró ningún recurso con la clave proporcionada, se produce una excepción. También se puede devolver un UnsetValue valor en el caso de excepción.

Excepciones

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

O bien

resourceKey no se encontró y la Handled propiedad está false en el UnhandledException evento .

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, el elemento primario del árbol lógico se busca a continuación, 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 en el Type elemento 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