共用方式為


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

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

傳回

Object

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

範例

下列範例會實作為按鈕處理常式,其中按一下的按鈕會將其背景設定為藉由呼叫 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 具有類似的行為,但如果沒有傳回具有所提供索引鍵的資源,則會擲回例外狀況。

適用於

另請參閱