Application.FindResource(Object) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Searches for a user interface (UI) resource, such as a Style or Brush, with the specified key, and throws an exception if the requested resource is not found (see XAML Resources).
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
Parameters
- resourceKey
- Object
The name of the resource to find.
Returns
The requested resource object. If the requested resource is not found, a ResourceReferenceKeyNotFoundException is thrown.
Exceptions
The resource cannot be found.
Examples
The following example shows how to use FindResource to find a resource, and to handle ResourceReferenceKeyNotFoundException if the resource is not found.
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
Remarks
FindResource will first look in application-scope resources for the specified resource. Application-scope resources are managed by Application, and are exposed from the Resources property. If the specified resource is not found in the set of application-scope resources, FindResource then next searches the system resources. System resources are shell resources defined by the user, and include colors, fonts, and shell configurations. These are exposed from the SystemColors, SystemFonts, and SystemParameters types, respectively, as static properties. To use FindResource to acquire them, these types also expose resource key properties that are designed to be passed to FindResource; for example, IconWidthKey.
Because FindResource returns an object, you must cast the returned value to the appropriate type if the resource is found.
Important
If you call this method for a key that cannot be found, an exception is thrown. If you do not want to handle exceptions that result from calling FindResource, call TryFindResource instead; TryFindResource returns a null
reference when a requested resource cannot be found, and does not throw an exception.
This method is thread safe and can be called from any thread.