FrameworkContentElement.FindResource(Object) Метод

Определение

Ищет ресурс с указанным ключом и вызывает исключение, если запрошенный ресурс не удается найти.Searches for a resource with the specified key, and will throw an exception if the requested resource is not found.

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

Параметры

resourceKey
Object

Идентификатор ключа искомого ресурса.Key identifier of the resource to be found.

Возвраты

Найденный ресурс или null, если соответствующий ресурс не найден (но при null также будет вызвано исключение).The found resource, or null if no matching resource was found (but will also throw an exception if null).

Исключения

Запрошенный ключ ресурса не найден.The requested resource key was not found.

resourceKeynull.resourceKey is null.

Примеры

В следующем примере выполняется поиск ресурса, определенного в разметке, и применение его к определенному свойству элемента в ответ на перенаправленное событие.The following example finds a resource as defined in markup and applies it to a certain property of an element in response to a routed event.

void SetBGByResource(object sender, RoutedEventArgs e)
{
    Block b = sender as Block;
    b.Background = (Brush)this.FindResource("RainbowBrush");
}
Private Sub SetBGByResource(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim b As Block = TryCast(sender, Block)
    b.Background = CType(Me.FindResource("RainbowBrush"), Brush)
End Sub

Комментарии

Важно!

При вызове этого метода для ключа, который не удается найти, создается исключение.If you call this method for a key that cannot be found, an exception is thrown. Если вы не хотите выполнять обработку исключений в этом случае, следует вызвать TryFindResource.If you do not want to handle exceptions for this case, you should instead call TryFindResource. TryFindResource возвращает null, если ресурс не найден, и не создает исключение.TryFindResource returns null when no resource is found, and does not throw an exception.

Если ресурс не найден в вызывающем элементе, то в родительском дереве выполняется поиск по логическому дереву, точно так же, как если бы в нем был запрошен ресурс по ключу во время выполнения.If the resource is not found on the calling element, the parent tree is searched using the logical tree, in the same way that the tree would be searched if a resource were requested by key at run-time.

Обычно возвращаемое значение будет немедленно приведено к типу свойства, которое вы пытались задать с возвращенным значением ресурса.Typically you would immediately cast the return value to the type of the property that you were attempting to set with the returned resource value.

Применяется к