@iRumba

Как в wpf комбинировать несколько стилей по типу CSS?

Здравствуйте. Есть ли возможность в WPF комбинировать несколько стилей в одном элементе как в CSS классами (class="class1 class2 class3 class4...")? BasedOn явно не хватает. Нужно указывать, что вот эта кнопочка:
с картинкой
с отступами снаружи
с отступами внутри
с красной/зеленой рамкой
с жирным шрифтом текста
с курсивным текстом
с чем нибудь еще
ОПЦИОНАЛЬНО

Как осуществить такое в WPF?

Спасибо.
  • Вопрос задан
  • 186 просмотров
Пригласить эксперта
Ответы на вопрос 1
@i_light
Backend, XAML, crossplatform
В WPF это сделать невозможно, причина этому проста - свойство Style объектное и Style - объект. Он может только наследоваться (BasedOn) от другого, и всё.

Можно попробовать использовать MultiBinding и в его конвертере перебирать все стили и добавлять их сеттеры в коллекцию сеттеров на выходе конвертера. Но надо понимать, что это во-первых довольно толстая операция, причём вызываться будет часто, и во-вторых надо обрабатывать ситуации, когда сеттеры конфликтуют.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы