FrameworkContentElement.FindResource(Object) Yöntem

Tanım

Belirtilen anahtarla bir kaynağı arar ve istenen kaynak bulunamazsa bir özel durum oluşturur.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

Parametreler

resourceKey
Object

Bulunan kaynağın anahtar tanımlayıcısı.Key identifier of the resource to be found.

Döndürülenler

Object

Bulunan kaynak veya null eşleşen kaynak bulunamadı (ancak aynı zamanda bir özel durum oluşturur null ).The found resource, or null if no matching resource was found (but will also throw an exception if null).

Özel durumlar

İstenen kaynak anahtarı bulunamadı.The requested resource key was not found.

resourceKey, null değeridir.resourceKey is null.

Örnekler

Aşağıdaki örnek, biçimlendirme bölümünde tanımlandığı şekilde bir kaynak bulur ve bunu yönlendirilmiş olaya yanıt olarak bir öğenin belirli bir özelliğine uygular.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

Açıklamalar

Önemli

Bulunamayan bir anahtar için bu yöntemi çağırırsanız, bir özel durum oluşturulur.If you call this method for a key that cannot be found, an exception is thrown. Bu durum için özel durumları işlemek istemiyorsanız, bunun yerine çağrısını yapmanız gerekir TryFindResource .If you do not want to handle exceptions for this case, you should instead call TryFindResource. TryFindResourcenullhiçbir kaynak bulunamadığında ve bir özel durum oluşturmaz döndürür.TryFindResource returns null when no resource is found, and does not throw an exception.

Kaynak çağıran öğede bulunmazsa, ana ağaç mantıksal ağaç kullanılarak aranır. Bu, bir kaynağın çalışma zamanında anahtar tarafından istenmiş olması halinde, ağacın aranacağı şekilde aranır.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.

Genellikle dönüş değerini, döndürülen kaynak değeriyle ayarlamaya çalıştığınız özelliğin türüne hemen atamalısınız.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.

Şunlara uygulanır