FrameworkElement.TryFindResource(Object) 方法

定義

以指定的索引鍵搜尋資源;如果找到,則傳回該資源。

C#
public object TryFindResource (object resourceKey);

參數

resourceKey
Object

要尋找之資源的索引鍵識別項。

傳回

Object

找到的資源,如果找不到具有所提供之 key 的資源,則為 null

範例

下列範例會實作為按鈕處理常式,其中按一下的按鈕會將其背景設定為藉由呼叫 TryFindResource 本身取得的資源定義筆刷。 這會逐步執行專案樹狀結構,並尋找資源本身定義于 XAML 中的資源 (,而且不會顯示) 。

C#
void TryFind(object sender, RoutedEventArgs e)  {
    Button b = e.Source as Button;
    b.Background = (Brush)b.TryFindResource("customBrush");
}

備註

如果在呼叫專案上找不到資源,父資源樹狀結構會向上搜尋邏輯樹狀結構,就像在執行時間由索引鍵要求資源時搜尋樹狀結構一樣。 只有在資源樹狀結構中沒有任何資源存在該索引鍵時,方法才會傳回 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
Windows Desktop 3.0, 3.1, 5, 6, 7

另請參閱