Question

Je souhaite scinder mon projet de vues en plusieurs modules. Je veux avoir un projet principal qui aura référence à tous les modules et ce projet principal va générer la vue à partir des modules.

Ma question est: comment puis-je lier tous les styles de l'application aux autres modules?

les reconnaîtra-t-il automatiquement?

et comment les modèles de modèle de vue seront-ils localisés? cause maintenant ils r dans un dictionnaire de ressources que je fusionne dans l'app.xaml

où shpuld je les ai mis (je veux qu'ils soient dans leur projet de module), Comment puis-je charger ces ressources?

Était-ce utile?

La solution

Ce que vous voulez s’obtient facilement si vous utilisez Prism: http://www.codeplex.com/CompositeWPF

Il existe de nombreux échantillons pour vous aider à démarrer là-bas.

La seule question que vous posez et à laquelle Prism ne répond pas est le ResourceDictionaries, mais il existe plusieurs façons de contourner ce problème, mais je pense que c'est le meilleur moyen: Modèles de données de ressources du module WPF (Prism)

La première réponse devrait vous y amener. Vous perdrez un peu de temps de conception dans vos modules, mais tout devrait être mis en place correctement au moment de l'exécution.

Autres conseils

bonne question. Comme l’a dit Anderson Imes, vous pouvez utiliser Composite WPF, mais il existe une autre option plus simple qui est récemment disponible si vous utilisez le Cadre d'extensibilité géré (MEF). Il y a une autre question que j'ai posée sur la manière de faire exactement ce que vous ' re parle d’utiliser MEF. Fondamentalement, il utilise les fonctions d'extensibilité de MEF pour rendre les ressources d'application extensibles, puis vos modules "extend" et "extension". les ressources de l'application avec leurs DataTemplates (vues). Ensuite, vous ajoutez simplement votre ViewModel à l'interface graphique où vous voulez, et WPF se charge de lui appliquer votre View. Je construis une application sur ce modèle et cela fonctionne vraiment bien.

L’avantage de l’utilisation de cette méthode est que votre fichier app.xaml n’est pas obligé de "savoir". à propos de tous vos modules View, et vous êtes libre de découper votre application à votre guise (je préfère la segmenter par fonction, puis par couche).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top