Стилизуйте WPF Expander, чтобы он выглядел как заголовок группы Outlook ListView - PullRequest
0 голосов
/ 29 мая 2009

Как можно, чтобы стиль изображения WPF Expander был +/- например. выглядеть как заголовок группы Outlook ListView, как показано на рисунке ниже:

Open alt text

Закрыто alt text

Ответы [ 2 ]

5 голосов
/ 12 июня 2009

Не совсем, но достаточно близко, прочитайте эту статью Карл Шиффлет на Серии образцов WPF - группировка, сортировка, промежуточные итоги и складные области ListBox из WPF LOB Tour материалы

ListBox Grouping, Sorting, Subtotals and Collapsible Regions
(источник: wordpress.com )

0 голосов
/ 30 мая 2009

Вам придется переопределить ControlTemplate Expander и изменить ContentControl с TemplateBinding of Header (обычно это ToggleButton) с содержимым вашего заголовка.

В вашем случае это +/- изображение / геометрия и текст.

Однако я бы пошел по другому пути, чем при использовании Expander. Поскольку вы используете очень специфическую ориентацию, я бы просто позаимствовал взаимодействие ToggleButton + ContentControl, которое объединяет Expander ContentControl по умолчанию, и вместо этого создал бы новый стиль / ControlTemplate для ToggleButton.

Основная причина, по которой я рекомендую это вместо переопределения ControlTemplate Expander, заключается в том, что Expander имеет очень большое определение ControlTemplate по умолчанию, и вам не придется иметь дело с переопределением всех опций ExpandDirection.

Кроме того, вы можете просто проигнорировать свойство ExpandDirection Expander и удалить код триггера ControlTemplate и связанные с ним стили, которые с этим справляются.

...