Condividi tramite


FrameworkElement.Resources Proprietà

Definizione

Ottiene o imposta il dizionario risorse definito in locale.

public:
 property System::Windows::ResourceDictionary ^ Resources { System::Windows::ResourceDictionary ^ get(); void set(System::Windows::ResourceDictionary ^ value); };
public System.Windows.ResourceDictionary Resources { get; set; }
[System.Windows.Markup.Ambient]
public System.Windows.ResourceDictionary Resources { get; set; }
member this.Resources : System.Windows.ResourceDictionary with get, set
[<System.Windows.Markup.Ambient>]
member this.Resources : System.Windows.ResourceDictionary with get, set
Public Property Resources As ResourceDictionary

Valore della proprietà

Dizionario delle risorse attualmente definito in locale, in cui ogni risorsa può essere accessibile tramite chiave.

Attributi

Commenti

I dizionari risorse che possono essere definiti completamente o parzialmente in XAML (Extensible Application Markup Language) vengono in genere creati come elemento di proprietà e in genere si trovano nell'elemento radice per qualsiasi singola pagina o per l'applicazione. L'inserimento del dizionario risorse a questo livello semplifica la ricerca da singoli elementi figlio nella pagina (o da qualsiasi pagina, nel caso dell'applicazione). Nella maggior parte degli scenari dell'applicazione è consigliabile definire gli stili come elementi oggetto all'interno di un dizionario risorse o essere definiti come risorse esterne in modo che l'intera risorsa di stile possa essere autonoma(questo approccio consente di separare le responsabilità della finestra di progettazione dalle responsabilità degli sviluppatori separando i file fisici che devono essere modificati).

Si noti che questa proprietà restituisce solo il dizionario risorse dichiarato direttamente all'interno di tale elemento. Questo processo è diverso dal processo di ricerca delle risorse effettivo, in cui un elemento figlio può accedere a qualsiasi risorsa definita in ogni elemento padre, eseguendo una ricerca ricorsiva verso l'alto.

È anche possibile fare riferimento alle risorse dal codice dall'interno della raccolta, ma tenere presente che le risorse create in XAML non saranno sicuramente accessibili fino a quando Loaded non viene generato dall'elemento che dichiara il dizionario. Infatti, le risorse vengono analizzate in modo asincrono e nemmeno l'evento Loaded è una garanzia che sia possibile fare riferimento a una risorsa definita xaml. Per questo motivo è in genere consigliabile accedere alle risorse definite da XAML solo come parte del codice di runtime o tramite altre tecniche XAML, ad esempio stili o riferimenti alle estensioni delle risorse per i valori degli attributi. Quando si accede alle risorse tramite codice, è essenzialmente equivalente a un riferimento DynamicResource creato da XAML.

L'oggetto sottostante ResourceDictionary supporta i metodi necessari per aggiungere, rimuovere o eseguire query sulle risorse dall'interno della raccolta usando il codice. La Resources proprietà è impostata per supportare lo scenario di sostituzione completa della raccolta di risorse di un elemento in modo che sia nuovo o diverso ResourceDictionary.

Si noti che la sintassi XAML illustrata non include un elemento per .ResourceDictionary Questo è un esempio di sintassi di raccolta implicita; È possibile omettere un tag che rappresenta l'elemento della raccolta. Gli elementi aggiunti come elementi alla raccolta vengono invece specificati. Per altre informazioni sulle raccolte implicite e su XAML, vedi Sintassi XAML in dettaglio. Un caso in cui un ResourceDictionary oggetto viene ancora specificato in modo esplicito come elemento è se si introduce un dizionario unito, nel qual caso in genere non sono presenti elementi figlio per tale ResourceDictionaryoggetto . Per informazioni dettagliate, vedere Dizionari risorse uniti.

Utilizzo dell'elemento della proprietà XAML

<object>
  <object.Resources>
    oneOrMoreResourceElements
  </object.Resources>
</object>

Valori XAML

oneOrMoreResourceElements Uno o più elementi oggetto, ognuno dei quali definisce una risorsa. Ogni elemento della proprietà della risorsa all'interno di ogni ResourceDictionary oggetto deve avere un valore univoco per la direttiva x:Key, che funge da chiave univoca quando i valori vengono recuperati da ResourceDictionary.

Si applica a

Vedi anche