Comment utiliser les ressources globales dans WPF?
J'ai une application WPF qui je voudrais utiliser certaines ressources statiques. J'ai créé une Bibliothèque de Ressources XAML fichier qui contient une ressource. J'ai également ajouté une corde dans les Ressources du projet à travers le panneau Propriétés.
J'ai supposé que je pouvais utiliser ces ressources avec l'expression de liaison:
{StaticResource ResourceName}
Mais visual studio me dit que les ressources ne sont pas trouvés. Dois-je inclure une certaine forme de référence dans mon XAML? Les exemples que j'ai vu seulement inclure les ressources locales telles que:
<Window.Resources><Page.Resources> etc
Je ne veux pas inclure les ressources localement, car je veux qu'ils soient à la disposition de plusieurs parties de l'application.
source d'informationauteur Banford
Vous devez vous connecter pour publier un commentaire.
Les mettre en Application.xaml 🙂
http://www.microsoft.com/emea/msdn/thepanel/en/articles/introduction_wpf.aspx
Regarder la section sur "la recherche de ressources statiques comportement" ici. Rien dans l'application du dictionnaire de ressources (c'est à dire
Application.Resources
) est disponible dans le monde entier. Chaque fois que vous regardez une ressource avec une clé, et la clé n'est pas utilisé n'importe où dans la hiérarchie de la ressource locale dictionnaires, l'un dans l'application du dictionnaire sera retourné.Pour remplir la demande du dictionnaire de ressources dans le code XAML, trouver le fichier XAML de l'application (en général App.xaml) et ajouter un
Application.Resources
élément.Vous pouvez créer un dictionnaire de ressources à l'échelle mondiale et inclure un chemin d'accès dans l'application.xaml
Maintenant toutes vos ressources dans le YourXamlFile.xaml sera visible à l'échelle mondiale dans votre projet.
Juste pour ajouter mon 2 cents ici.
Je voulais aussi utiliser les ressources mondiales, mais j'utilise une Application personnalisée de la classe, donc je ne pouvais pas le mettre juste dans l'Application.xaml.
J'ai créé un Ressources.xaml dans mon emplacement racine, puis fait:
Mais attention, la Ressource.xaml DOIT avoir de l'Action de Construire à la "Page". Quand il n'en a pas, il ne pouvait pas trouver certains types j'ai utilisé que des convertisseurs.