От новичка до гуру: Курсы программирования на CyberDuff

Как лучше всего организовать стили WPF и ResourceDictionaries в большом проекте?

У меня есть большое приложение WPF, в котором используется большое количество стилей, кистей и тем. Управлять большим количеством стилей с несколькими разработчиками становится сложно. Сейчас большинство стилей для всего нашего приложения находятся в одном словаре ресурсов, а каждая тематическая кисть находится в своем собственном словаре ресурсов.

Проблема в том, что найти стиль, который мы хотим использовать, сложно, потому что основной словарь ресурсов стал очень большим. Есть какие-нибудь рекомендации по тому, как это лучше реорганизовать? Я подумал о том, чтобы разбить его на отдельные словари ресурсов для типа элемента управления, для которого предназначен стиль. Например, словарь ButtonStyles.xaml, но я не уверен, что это правильный путь.

Если у кого-то есть предложения по организации своих больших словарей ресурсов, я был бы признателен.

14.04.2009

Ответы:


1

Определенно, использование нескольких словарей ресурсов - лучший способ. Возможность объединять словари ресурсов была препятствием для разработчиков Silverlight (до версии 3.0) и благом для разработчиков WPF с самого начала.

Для проектов среднего размера я настоятельно рекомендую кластеризовать ресурсы в словарях с указанием определенного типа, например ButtonStyles.xaml и Brushes.xaml, Images.xaml и так далее.

Для действительно больших проектов, где у вас есть несколько участников для нескольких словарей общих ресурсов, которые могут использоваться несколькими приложениями WPF и интерфейсами, я бы рекомендовал создать целую отдельную сборку, содержащую все ваши словари ресурсов.

Я не пробовал это лично, но мне сказали, что Expression Blend 2 и тем более в Blend 3 имеют действительно хорошие графические интерфейсы для создания и организации ваших словарей ресурсов и преобразования стилей для каждого элемента управления в ресурсы и т. Д.

14.04.2009
Новые материалы

5 простых концепций Python, ставших сложными
#заранее извините 1) Переменные x = 4 y = 5 Переменная в Python — это символическое представление объекта. После присвоения некоторого объекта переменной Python мы приобретаем..

«Освоение вероятности: изучение совместной, предельной, условной вероятности и теоремы Байеса —…
Виды вероятности: Совместная вероятность Предельная вероятность Условная вероятность Диаграмма Венна в вероятностях: В “Set Theory” мы создаем диаграмму Венна...

Основы Spring: Bean-компоненты, контейнер и внедрение зависимостей
Как лего может помочь нашему пониманию Когда мы начинаем использовать Spring, нам бросают много терминов, и может быть трудно понять, что они все означают. Итак, мы разберем основы и будем..

Отслеживание состояния с течением времени с дифференцированием снимков
Время от времени что-то происходит и революционизирует часть моего рабочего процесса разработки. Что-то более забавное вместо типичного утомительного и утомительного процесса разработки. В..

Я предполагаю, что вы имеете в виду методы обработки категориальных данных.
Я предполагаю, что вы имеете в виду методы обработки категориальных данных. Пожалуйста, проверьте мой пост Инструментарий специалиста по данным для кодирования категориальных переменных в..

Игра в прятки с данными
Игра в прятки с данными Я хотел бы, чтобы вы сделали мне одолжение и ответили на следующие вопросы. Гуглить можно в любое время, здесь никто не забивается. Сколько регионов в Гане? А как..

«Раскрытие математических рассуждений с помощью Microsoft MathPrompter и моделей больших языков»
TL;DR: MathPrompter от Microsoft показывает, как использовать математические рассуждения с большими языковыми моделями; 4-этапный процесс для улучшения доверия и рассуждений в математических..