将WPF Expander设置为Outlook ListView组标题

时间:2009-05-29 17:24:39

标签: wpf listview expander

如何将WPF Expander图像设置为+/-,例如看起来像Outlook ListView组标题,如下图所示:

打开 alt text

alt text

2 个答案:

答案 0 :(得分:5)

不完全但足够接近,请Karl Shifflet WPF LOB导览材料

WPF Sample Series – ListBox Grouping, Sorting, Subtotals and Collapsible Regions查看此文章

ListBox Grouping, Sorting, Subtotals and Collapsible Regions
(来源:wordpress.com

答案 1 :(得分:0)

您必须覆盖Expander的ControlTemplate,并使用Header的TemplateBinding(通常是ToggleButton)更改ContentControl以及您的标题内容。

在您的情况下,这是+/-图像/几何和文本。

但是,我会采用与使用Expander不同的路线。由于您使用的是非常具体的方向,我只需借用默认Expander ContentControl组合的ToggleButton + ContentControl交互,并为ToggleButton创建一个新的Style / ControlTemplate。

我推荐这个而不是覆盖Expander的ControlTemplate的主要原因是Expander有一个非常大的默认ControlTemplate定义,你不必处理覆盖所有ExpandDirection选项。

或者,您可以忽略Expander的ExpandDirection属性,并删除ControlTemplate触发器代码以及与之相关的关联样式。