語言

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 如果沒有包含該資源 resourceKey 的資源,則不被找到。

範例

以下範例實作為按鈕處理程序,點擊的按鈕會將其背景設定為由自身呼叫 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 方法的行為類似,但若未回傳包含該金鑰的資源,則會拋出例外。

適用於

另請參閱