Compartilhar via


Application.FindResource(Object) Método

Definição

Pesquisa um recurso de interface do usuário, como um Style ou Brush, com a chave especificada, e gera uma exceção se o recurso solicitado não for encontrado (consulte recursos XAML).

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 nome do recurso a ser encontrado.

Retornos

Object

O objeto do recurso solicitado. Se o recurso solicitado não for encontrado, um ResourceReferenceKeyNotFoundException será gerado.

Exceções

Não é possível localizar o recurso.

Exemplos

O exemplo a seguir mostra como usar FindResource para localizar um recurso e manipular ResourceReferenceKeyNotFoundException se o recurso não for encontrado.

void findResourceButton_Click(object sender, RoutedEventArgs e) {
  try {
    object resource = Application.Current.FindResource("UnfindableResource");
  }
  catch (ResourceReferenceKeyNotFoundException ex) {
    MessageBox.Show("Resource not found.");
  }
}
Private Sub findResourceButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
  Try
    Dim resource As Object = Application.Current.FindResource("UnfindableResource")
  Catch ex As ResourceReferenceKeyNotFoundException
    MessageBox.Show("Resource not found.")
  End Try
End Sub

Comentários

FindResource primeiro analisará os recursos de escopo do aplicativo para o recurso especificado. Os recursos de escopo do aplicativo são gerenciados por Application, e são expostos da Resources propriedade. Se o recurso especificado não for encontrado no conjunto de recursos de escopo do aplicativo, em seguida, FindResource pesquise os recursos do sistema. Os recursos do sistema são recursos de shell definidos pelo usuário e incluem cores, fontes e configurações de shell. Elas são expostas a partir de SystemColors, SystemFontse SystemParameters tipos, respectivamente, como propriedades estáticas. Para usá-las FindResource , esses tipos também expõem propriedades de chave de recurso que foram projetadas para serem passadas para FindResource; por exemplo, IconWidthKey.

Como FindResource retorna um objeto, você deve converter o valor retornado para o tipo apropriado se o recurso for encontrado.

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 em vez disso; retornará TryFindResource uma null referência quando um recurso solicitado não puder ser encontrado e não gerará uma exceção.

Esse método é thread safe e pode ser chamado de qualquer thread.

Aplica-se a

Confira também