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

Définition

Obtient ou définit le dictionnaire de ressources actuel défini localement.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

Valeur de propriété

Les ressources actuelles définies localement.The current locally-defined resources. Il s'agit d'un dictionnaire de ressources, où les ressources dans le dictionnaire sont accédées par clé.This is a dictionary of resources, where resources within the dictionary are accessed by key.

Exemples

L’exemple suivant établit une Resources collection sur un FlowDocument élément racine.The following example establishes a Resources collection on a FlowDocument root element. FlowDocumentest un choix classique, car il s’agit de l' FrameworkContentElement une des rares classes qui ont un sens en tant qu’élément racine, et les ressources sont généralement stockées à la racine de la page ou à des niveaux encore plus élevés tels que dans l’application.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>

Remarques

Les dictionnaires de ressources qui peuvent être définis entièrement ou langage XAML (eXtensible Application Markup Language)Extensible Application Markup Language (XAML) partiellement dans sont généralement créés en tant qu’élément de propriété et se trouvent généralement sur l’élément racine pour une page individuelle ou pour l’application.Resource dictionaries that can be defined completely or partially in langage XAML (eXtensible Application Markup Language)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. Le fait de placer le dictionnaire de ressources à ce niveau facilite la recherche d’éléments enfants individuels dans la page (ou à partir de n’importe quelle page, dans le cas de l’application).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). Dans la plupart des scénarios d’application, nous recommandons que les styles soient définis en tant qu’éléments objet dans un dictionnaire de ressources, ou soient définis comme des ressources externes afin que la ressource de style entière puisse être autonome (cette approche aide à séparer le concepteur responsabilités des développeurs en séparant les fichiers physiques qui doivent être modifiés.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).

Notez que cette propriété retourne uniquement le dictionnaire de ressources déclaré directement dans cet élément.Note that this property returns only the resource dictionary declared directly within that element. Cela est différent du processus réel de recherche de ressources, où un élément enfant peut accéder à toutes les ressources définies dans chaque élément parent, en effectuant une recherche de manière récursive.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.

Les ressources peuvent également être référencées par du code à partir de la collection, mais sachez que XAMLXAML les ressources créées dans ne sont pas Loaded accessibles tant qu’elles ne sont pas déclenchées par l’élément qui déclare le dictionnaire.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. En fait, les ressources sont analysées de manière asynchrone, et même Loaded l’événement est une assurance que vous pouvez référencer une XAMLXAML ressource définie.In fact, resources are parsed asynchronously, and not even the Loaded event is an assurance that you can reference a XAMLXAML defined resource. Pour cette raison, vous devez généralement accéder XAMLXAML uniquement aux ressources définies dans le cadre du code d’exécution, ou XAMLXAML via d’autres techniques telles que les styles ou les références d’extension de ressource pour les valeurs d’attribut.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. Lorsque vous accédez à des ressources par le biais du code, il est essentiellement équivalent à XAMLXAMLune référence DynamicResource créée à partir de.When you access resources through code, it is essentially equivalent to a DynamicResource reference made from XAMLXAML.

Le sous ResourceDictionary -jacent prend en charge les méthodes requises pour ajouter, supprimer ou interroger des ressources à partir de la collection à l’aide de code.The underlying ResourceDictionary supports the methods required to add, remove, or query resources from within the collection by using code. La Resources propriété peut être définie de façon à prendre en charge le scénario de remplacement complet de la collection de ressources d’un ResourceDictionaryélément comme étant nouveau ou différent.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.

Notez que la XAMLXAML syntaxe indiquée n’inclut pas d’élément ResourceDictionarypour.Notice that the XAMLXAML syntax shown does not include an element for the ResourceDictionary. Il s’agit d’un exemple de syntaxe de collection implicite. une balise représentant l’élément de collection peut être omise.This is an example of implicit collection syntax; a tag representing the collection element can be omitted. Les éléments qui sont ajoutés en tant qu’éléments à la collection sont spécifiés à la place.The elements that are added as items to the collection are specified instead. Pour plus d’informations sur les collections XAMLXAMLimplicites et, consultez syntaxe XAML en détail.For more information about implicit collections and XAMLXAML, see XAML Syntax In Detail. Un cas où un ResourceDictionary est toujours spécifié explicitement comme un élément est si vous introduisez un dictionnaire fusionné, auquel cas il n’y a généralement pas d’éléments enfants pour ResourceDictionarycela.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. Pour plus d’informations, consultez Dictionnaires de ressources fusionnés.For details, see Merged Resource Dictionaries.

Utilisation des éléments de propriété XAMLXAML Property Element Usage

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

Valeurs XAMLXAML Values

oneOrMoreResourceElementsoneOrMoreResourceElements
Un ou plusieurs éléments objet, chacun d’eux définissant une ressource.One or more object elements, each of which defines a resource. Chaque élément de propriété de ressource ResourceDictionary dans chaque doit avoir une valeur unique pour la directive x:Key, qui sert de clé unique lorsque les valeurs ResourceDictionarysont récupérées à partir de.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.

S’applique à

Voir aussi