FrameworkElement.FindResource(Object) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Cerca una risorsa con la chiave specificata e genera un'eccezione se la risorsa richiesta non viene trovata.
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
Parametri
- resourceKey
- Object
Identificatore della chiave per la risorsa richiesta.
Restituisce
Risorsa richiesta. Se non viene trovata una risorsa con la chiave specificata, viene generata un'eccezione. In tal caso potrebbe anche essere restituito un valore UnsetValue.
Eccezioni
resourceKey
non è trovato e un gestore eventi non esiste per l'evento UnhandledException.
-oppure-
resourceKey
non è trovato e la proprietà Handled è false
nell'evento UnhandledException.
resourceKey
è null
.
Esempio
Nell'esempio seguente viene ottenuta una risorsa denominata e ne viene eseguito il cast a un tipo appropriato per riempire una proprietà.
void SetBGByResource(object sender, RoutedEventArgs e)
{
Button b = sender as Button;
b.Background = (Brush)this.FindResource("RainbowBrush");
}
Private Sub SetBGByResource(ByVal sender As Object, ByVal e As RoutedEventArgs)
Dim b As Button = TryCast(sender, Button)
b.Background = CType(Me.FindResource("RainbowBrush"), Brush)
End Sub
Commenti
Importante
Se si chiama questo metodo per una chiave che non è possibile trovare, viene generata un'eccezione. Se non si desidera gestire le eccezioni risultanti dalla chiamata FindResourcea , chiamare TryFindResource invece .
TryFindResource restituisce null
quando non è possibile trovare una risorsa richiesta e non genera un'eccezione.
Se la risorsa non viene trovata nell'elemento chiamante, l'elemento padre nell'albero logico viene cercato successivamente, l'applicazione, i temi e infine le risorse di sistema. Questa metodologia di ricerca è identica alla modalità di ricerca dell'albero se una risorsa è stata richiesta da un riferimento di risorsa dinamica nel markup. Per altre informazioni sulla ricerca delle risorse, vedi Risorse XAML.
In genere, si esegue immediatamente il cast di un FindResource valore restituito al tipo della proprietà impostata con il valore della risorsa restituito.
Le chiavi di risorsa non sono necessariamente stringhe. Ad esempio, gli stili per i controlli a livello di tema vengono deliberatamente inseriti Type nella chiave del controllo e gli stili dell'applicazione o della pagina per i controlli usano in genere questa stessa convenzione chiave. Per informazioni dettagliate, vedi Applicazione di stili e modelli o risorse XAML.