FrameworkElement.FindResource(Object) Método

Definição

Procura um recurso com a chave especificada e lança uma exceção se o recurso solicitado não for 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-chave para o recurso solicitado.

Devoluções

O recurso solicitado. Se não for encontrado nenhum recurso com a chave fornecida, é lançada uma exceção. Um valor pode também ser devolvido no caso de UnsetValue exceção.

Exceções

resourceKey não foi encontrado e não existe gestor de eventos para o UnhandledException evento.

-ou-

resourceKey não foi encontrado e a Handled propriedade está false no UnhandledException caso.

resourceKey é null.

Exemplos

O exemplo seguinte obtém um recurso nomeado e lança-o para 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

Observações

Importante

Se chamar este método para uma chave que não pode ser encontrada, é lançada uma exceção. Se não quiser lidar com exceções que resultam de chamar FindResource, ligue TryFindResource em vez disso. TryFindResource retorna null quando um recurso solicitado não pode ser encontrado e não lança exceção.

Se o recurso não for encontrado no elemento que chama, o elemento pai na árvore lógica é pesquisado a seguir, depois a aplicação, depois os temas e, finalmente, os recursos do sistema. Esta metodologia de pesquisa é idêntica à forma como a árvore é pesquisada se um recurso for solicitado por uma referência dinâmica em marcação. Para mais informações sobre pesquisa de recursos, consulte Recursos XAML.

Normalmente, lança-se imediatamente um FindResource valor de retorno para o tipo da propriedade que está a definir com o valor do recurso devolvido.

As chaves de recursos não são necessariamente strings. Por exemplo, os estilos dos controlos ao nível do tema são deliberadamente ligados ao Type do controlo, e os estilos de aplicação ou página dos controlos normalmente usam esta mesma convenção de chave. Para mais detalhes, consulte Recursos de Estilização e Templação ou XAML.

Aplica-se a

Ver também