FrameworkElement.FindResource(Object) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Pesquisa um recurso com a chave especificada e gera uma exceção se o recurso solicitado não é encontrado.
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
O identificador de chave do recurso solicitado.
Retornos
O recurso solicitado. Se nenhum recurso com a chave fornecida foi encontrado, uma exceção será gerada. Um valor UnsetValue também pode ser retornado em caso de exceção.
Exceções
O resourceKey
não foi encontrado e não existe um manipulador de eventos para o evento UnhandledException.
- ou -
O resourceKey
não foi encontrado e a propriedade Handled é false
no evento UnhandledException.
resourceKey
é null
.
Exemplos
O exemplo a seguir obtém um recurso nomeado e o converte em um tipo apropriado para preencher uma propriedade.
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
Comentários
Importante
Se você chamar esse método para uma chave que não pode ser encontrada, uma exceção será gerada. Se você não quiser lidar com exceções resultantes da chamada FindResource, chame TryFindResource .
TryFindResource retorna null
quando um recurso solicitado não pode ser encontrado e não gera uma exceção.
Se o recurso não for encontrado no elemento de chamada, o elemento pai na árvore lógica será pesquisado em seguida, o aplicativo, os temas e, por fim, os recursos do sistema. Essa metodologia de pesquisa é idêntica à forma como a árvore é pesquisada se um recurso foi solicitado por uma referência dinâmica de recurso na marcação. Para obter mais informações sobre a pesquisa de recursos, consulte Recursos XAML.
Normalmente, você converte imediatamente um FindResource valor retornado para o tipo da propriedade que você configura com o valor de recurso retornado.
As chaves de recurso não são necessariamente cadeias de caracteres. Por exemplo, os estilos para controles no nível do tema são deliberadamente chaveados para o Type do controle, e os estilos de aplicativo ou página para controles normalmente usam essa mesma convenção de chave. Para obter detalhes, consulte Estilo e modelagem ou recursos XAML.