5 votes

XAML: Comment définir des modèles de données et des styles à utiliser dans plusieurs projets

Je commence à développer une application de bureau avec WPF (.net 3.5 sp1, avec VS seulement, pas encore blend).

J'en suis au point où j'ai quelques composants génériques réutilisables dans plusieurs bibliothèques.

Où puis-je définir mes Styles & Data Templates afin qu'ils soient réutilisables à travers plusieurs projets, pour avoir un look constant?

J'ai regardé les ResourceDictionaries, mais je ne suis pas sûr que

  1. Ce soit ce dont j'ai besoin
  2. Si c'est ce dont j'ai besoin, comment je peux les 'importer' dans un autre projet et référencer leur contenu dans Xaml.

Merci,

10voto

Nir Points 18250

ResourceDictionary est la solution à adopter, vous pouvez soit copier un fichier xaml contenant le dictionnaire de ressources entre les projets, soit les compiler dans une DLL que vous référencerez depuis vos projets.

Pour référencer des dictionnaires dans le même projet, vous ajoutez quelque chose comme ceci à votre App.xaml (dans ce cas, je garde mes ressources dans le dossier ControlStyles).

Si vous les compilez dans une DLL différente, vous pouvez utiliser cette syntaxe (si le fichier dll de styles s'appelle StyleAssembly, le mot "component" fait en réalité partie de la syntaxe et n'est pas un nom de répertoire) :

3voto

Paul Pettit Points 11

@Nir a raison, la seule chose que j'aime aussi faire est de remplacer

avec ce raccourci

Cela me semble juste plus propre et le temps d'exécution ajoutera automatiquement pack://application:,,, lorsque qu'il essaiera de localiser la ressource.

0voto

Bryce Kahle Points 3937

Vous voulez des dictionnaires de ressources fusionnés, comme décrit ici.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X