FrameworkElement.TryFindResource(Object) Метод
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Ищет ресурс с указанным ключом и возвращает его, если он найден.
public:
System::Object ^ TryFindResource(System::Object ^ resourceKey);
public object TryFindResource(object resourceKey);
member this.TryFindResource : obj -> obj
Public Function TryFindResource (resourceKey As Object) As Object
- resourceKey
- Object
Ключевой идентификатор искомого ресурса.
Найденный ресурс или значение null
, если ресурс с указанным key
не обнаружен.
Следующий пример реализуется в виде обработчика кнопки, где нажатая кнопка задает в качестве фона определяемую ресурсом кисть, полученную путем вызова TryFindResource для себя. При этом выполняется обход дерева элементов и поиск ресурса (сам ресурс определен в XAML и не отображается).
void TryFind(object sender, RoutedEventArgs e) {
Button b = e.Source as Button;
b.Background = (Brush)b.TryFindResource("customBrush");
}
Private Sub TryFind(ByVal sender As Object, ByVal e As RoutedEventArgs)
Dim b As Button = TryCast(e.Source, Button)
b.Background = CType(b.TryFindResource("customBrush"), Brush)
End Sub
Если ресурс не найден в вызывающем элементе, поиск родительского дерева ресурсов выполняется вверх по логическому дереву так же, как и в дереве, если ресурс был запрошен ключом во время выполнения. Метод возвращает только null
в том случае, если ни один ресурс этого ключа не существовал в дереве ресурсов в рамках существующих условий дерева на момент TryFindResource вызова.
Как правило, возвращаемое значение немедленно приводится к типу свойства, которое вы пытались задать с помощью возвращаемого значения ресурса.
Метод FindResource имеет аналогичное поведение, за исключением того, что он создает исключение, если не был возвращен ресурс с указанным ключом.
Продукт | Версии |
---|---|
.NET Framework | 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
Windows Desktop | 3.0, 3.1, 5, 6, 7, 8, 9, 10 |
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: