Partager via


Comment utiliser des ressources d’application (WPF .NET)

Cet exemple montre comment utiliser des ressources définies par l’application. Les ressources peuvent être définies au niveau de l’application, généralement via le fichier App.xaml ou Application.xaml , selon l’utilisation de votre projet. Les ressources définies par l’application sont globalement étendues et accessibles par toutes les parties de l’application.

Important

La documentation du Guide du bureau pour .NET 7 et .NET 6 est en cours de construction.

Exemple

L’exemple suivant montre un fichier de définition d’application. Le fichier de définition d’application définit une section de ressource (une valeur pour la Resources propriété). Les ressources définies au niveau de l’application sont accessibles à toutes les autres pages qui font partie de l’application. Dans ce cas, la ressource est un style déclaré. Étant donné qu’un style complet qui inclut un modèle de contrôle peut être long, cet exemple omet le modèle de contrôle défini dans le ContentTemplate jeu de propriétés du style.

<Application.Resources>
    <Style TargetType="Border" x:Key="FancyBorder">
        <Setter Property="Background" Value="#4E1A3D" />
        <Setter Property="BorderThickness" Value="5" />
        <Setter Property="BorderBrush">
            <Setter.Value>
                <LinearGradientBrush>
                    <GradientStop Offset="0.0" Color="#4E1A3D"/>
                    <GradientStop Offset="1.0" Color="Salmon"/>
                </LinearGradientBrush>
            </Setter.Value>
        </Setter>
    </Style>
</Application.Resources>

L’exemple suivant montre une page XAML qui fait référence à une ressource au niveau de l’application de l’exemple précédent. La ressource est référencée avec une extension staticResource Markup qui spécifie la clé de ressource unique pour la ressource. La ressource « FancyBorder » n’est pas trouvée dans l’étendue de l’objet et de la fenêtre actuels. Par conséquent, la recherche de ressources se poursuit au-delà de la page active et dans les ressources au niveau de l’application.

<Border Style="{StaticResource FancyBorder}">
    <StackPanel Margin="5">
        <Button>Button 1</Button>
        <Button>Button 2</Button>
        <Button>Button 3</Button>
        <Button>Button 4</Button>
    </StackPanel>
</Border>

Voir aussi