FrameworkContentElement.Resources FrameworkContentElement.Resources FrameworkContentElement.Resources FrameworkContentElement.Resources Property

Definition

Ruft das aktuelle lokal definierte Ressourcenwörterbuch ab oder legt es fest.Gets or sets the current locally-defined resource dictionary.

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

Eigenschaftswert

Die aktuellen lokal definierten Ressourcen.The current locally-defined resources. Dies ist ein Wörterbuch von Ressourcen, wobei auf Ressourcen innerhalb des Wörterbuchs über Schlüssel zugegriffen wird.This is a dictionary of resources, where resources within the dictionary are accessed by key.

Beispiele

Im folgenden Beispiel wird eine Resources -Auflistung für FlowDocument ein root-Element festgelegt.The following example establishes a Resources collection on a FlowDocument root element. FlowDocumentist eine typische Wahl, da es sich hierbei um eine FrameworkContentElement der wenigen Klassen handelt, die als Stamm Element sinnvoll sind, und Ressourcen werden im Allgemeinen im Seiten Stamm oder auf noch höheren Ebenen wie in der Anwendung gespeichert.FlowDocument is a typical choice because it is one of the few FrameworkContentElement classes that make sense as a root element, and resources are generally stored at the page root or at even higher levels such as in the application.

<FlowDocument
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class=" SDKSample.Page2">
  <FlowDocument.Resources>
    <Style TargetType="{x:Type Paragraph}" x:Key="BluePara">
      <Setter Property="Background" Value="Blue"/>
      <Setter Property="FontSize" Value="18"/>
      <Setter Property="Foreground" Value="LightBlue"/>
      <Setter Property="FontFamily" Value="Trebuchet MS"/>
    </Style>
  </FlowDocument.Resources>
  <Paragraph Style="{StaticResource BluePara}">Lorem ipsum etc.</Paragraph>
</FlowDocument>

Hinweise

Ressourcen Wörterbücher, die vollständig oder teilweise Extensible Application Markup Language (XAML)Extensible Application Markup Language (XAML) in definiert werden können, werden in der Regel als Eigenschafts Element erstellt und befinden sich in der Regel im Stamm Element für jede einzelne Seite oder für die Anwendung.Resource dictionaries that can be defined completely or partially in Extensible Application Markup Language (XAML)Extensible Application Markup Language (XAML) are typically created as a property element, and are typically on the root element for any individual page or for the application. Wenn Sie das Ressourcen Wörterbuch auf dieser Ebene platzieren, ist es leichter, von einzelnen untergeordneten Elementen auf der Seite zu suchen (oder von einer beliebigen Seite im Anwendungsfall).Placing the resource dictionary at this level makes it easier to find from individual child elements in the page (or from any page, in the application case). In den meisten Anwendungsszenarien empfiehlt es sich, Stile als Objekt Elemente innerhalb eines Ressourcen Wörterbuchs zu definieren oder als externe Ressourcen festgelegt zu werden, damit die gesamte Stil Ressource eigenständig sein kann (dieser Ansatz hilft beim Trennen des Designers. Zuständigkeiten von Entwickler Zuständigkeiten durch das Trennen der physischen Dateien, die bearbeitet werden müssen.In most application scenarios, we recommend that styles be defined as object elements within a resource dictionary, or be defined as external resources so that the entire style resource can be self-contained (this approach helps separate designer responsibilities from developer responsibilities by separating the physical files that need to be edited).

Beachten Sie, dass diese Eigenschaft nur das direkt in diesem Element deklarierte Ressourcen Wörterbuch zurückgibt.Note that this property returns only the resource dictionary declared directly within that element. Dies unterscheidet sich von dem tatsächlichen Ressourcen Suchprozess, bei dem ein untergeordnetes Element auf alle Ressourcen zugreifen kann, die in den einzelnen übergeordneten Elementen definiert sind, wobei die Suche rekursiv nach oben erfolgt.This is different than the actual resource lookup process, where a child element can access any of the resources defined in each parent element, searching recursively upwards.

Auf Ressourcen kann auch durch Code aus der Auflistung verwiesen werden, aber beachten Sie, dass die in XAMLXAML erstellten Ressourcen auf jeden Fall erst zugänglich Loaded sind, nachdem das Element, das das Wörterbuch deklariert, ausgelöst wird.Resources can also be referenced by code from within the collection, but be aware that resources created in XAMLXAML will definitely not be accessible until after Loaded is raised by the element that declares the dictionary. Tatsächlich werden Ressourcen asynchron analysiert, und nicht einmal das Loaded Ereignis ist eine Zusicherung, dass Sie auf eine XAMLXAML definierte Ressource verweisen können.In fact, resources are parsed asynchronously, and not even the Loaded event is an assurance that you can reference a XAMLXAML defined resource. Aus diesem Grund sollten Sie im Allgemeinen nur XAMLXAML im Rahmen des Lauf Zeit Codes oder über andere XAMLXAML Techniken wie Stile oder Ressourcen Erweiterungs Verweise für Attributwerte auf definierte Ressourcen zugreifen.For this reason you should generally only access XAMLXAML defined resources as part of run-time code, or through other XAMLXAML techniques such as styles or resource extension references for attribute values. Wenn Sie über Code auf Ressourcen zugreifen, entspricht dies im Wesentlichen einem DynamicResource -Verweis aus XAMLXAML.When you access resources through code, it is essentially equivalent to a DynamicResource reference made from XAMLXAML.

Der zugrunde ResourceDictionary liegende unterstützt die Methoden, die zum Hinzufügen, entfernen oder Abfragen von Ressourcen innerhalb der Sammlung mithilfe von Code erforderlich sind.The underlying ResourceDictionary supports the methods required to add, remove, or query resources from within the collection by using code. Die Resources -Eigenschaft kann festgelegt werden, um das Szenario zu unterstützen, mit dem die Ressourcen Auflistung eines Elements vollständig ResourceDictionaryersetzt werden kann.The Resources property is settable to support the scenario of completely replacing the resources collection of an element to be a new or different ResourceDictionary.

Beachten Sie, XAMLXAML dass die angezeigte Syntax kein-Element ResourceDictionaryfür enthält.Notice that the XAMLXAML syntax shown does not include an element for the ResourceDictionary. Dies ist ein Beispiel für eine implizite Auflistungs Syntax. ein Tag, das das Auflistungs Element darstellt, kann weggelassen werden.This is an example of implicit collection syntax; a tag representing the collection element can be omitted. Stattdessen werden die Elemente angegeben, die der Auflistung als Elemente hinzugefügt werden.The elements that are added as items to the collection are specified instead. Weitere Informationen zu impliziten Auflistungen XAMLXAMLund finden Sie in der XAML-Syntax im Detail.For more information about implicit collections and XAMLXAML, see XAML Syntax In Detail. Ein Fall, bei ResourceDictionary dem a weiterhin explizit als Element angegeben wird, ist, wenn Sie ein zusammen geführtes Wörterbuch einführen. in diesem ResourceDictionaryFall gibt es in der Regel keine untergeordneten Elemente.One case where a ResourceDictionary is still specified explicitly as an element is if you are introducing a merged dictionary, in which case there are typically no child elements for that ResourceDictionary. Weitere Informationen finden Sie unter zusammengeführte Ressourcen Wörterbücher.For details, see Merged Resource Dictionaries.

Verwendung von XAML-EigenschaftenelementenXAML Property Element Usage

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

XAML-WerteXAML Values

oneOrMoreResourceElementsoneOrMoreResourceElements
Ein oder mehrere Objekt Elemente, von denen jede eine Ressource definiert.One or more object elements, each of which defines a resource. Jedes Ressourcen Eigenschaften Element ResourceDictionary muss über einen eindeutigen Wert für die x:Key-Direktiveverfügen, der als eindeutiger Schlüssel fungiert, wenn Werte aus dem ResourceDictionaryabgerufen werden.Each resource property element within each ResourceDictionary must have a unique value for the x:Key Directive, which serves as the unique key when values are retrieved from the ResourceDictionary.

Gilt für:

Siehe auch