2009-04-14 11 views
11

J'ai une grande application WPF qui utilise un grand nombre de styles, de styles et de thèmes. Gérer le grand nombre de styles avec plusieurs développeurs devient difficile. À l'heure actuelle, la plupart de nos styles à l'échelle de l'application sont dans un dictionnaire de ressources et les pinceaux thématiques sont chacun dans leur propre dictionnaire de ressources.Quelle est la meilleure façon d'organiser les styles WPF et ResourceDictionaries dans un grand projet?

Le problème est que trouver le style que nous voulons utiliser est difficile parce que le dictionnaire de ressources principal est devenu si grand. Des recommandations sur la meilleure façon de réorganiser cela? J'ai envisagé de le décomposer en dictionnaires de ressources distincts pour le type de contrôle pour lequel le style est destiné. Comme un dictionnaire ButtonStyles.xaml, mais je ne suis pas sûr que ce soit la bonne façon de procéder.

Si quelqu'un a des suggestions sur la façon dont ils organisent leurs grands dictionnaires de ressources, je l'apprécierais.

Répondre

10

Utiliser définitivement plusieurs dictionnaires de ressources est la solution. La possibilité de fusionner des dictionnaires de ressources a été un obstacle pour les développeurs Silverlight (jusqu'à la version 3.0) et un avantage pour les développeurs WPF depuis le début.

Pour les projets de taille moyenne, je recommande fortement de regrouper vos ressources dans des dictionnaires qui indiquent un type particulier, par ex. ButtonStyles.xaml et Brushes.xaml et Images.xaml et ainsi de suite.

Pour les très gros projets où vous avez plusieurs contributeurs à plusieurs dictionnaires de ressources partagées pouvant être utilisés à partir de plusieurs applications WPF et frontaux, je vous recommande de créer un assembly séparé contenant tous vos dictionnaires de ressources. Je n'ai pas essayé cela personnellement, mais on m'a dit que Expression Blend 2 et encore plus dans Blend 3 a de très bonnes interfaces graphiques pour construire et organiser vos dictionnaires de ressources et convertir des styles par contrôle en ressources, etc

Questions connexes