我希望Expander
只在用户点击标题图标时展开/折叠其内容。 (而不是整个标题是可点击的。)
我是否必须重新定义控件Template
才能执行此操作?它看起来怎么样?
我在哪里可以找到控件的标准模板/样式?
感谢您的时间。
答案 0 :(得分:2)
实际上,比修改模板更简单的XAML解决方案。在这种情况下,不要使用Expander的头属性。而是使用您自己的样式TextBlock覆盖扩展器。
<Application.Resources>
<Style x:Key="ExpanderHeader" TargetType="{x:Type TextBlock}">
<Setter Property="Height" Value="22" />
<Setter Property="Margin" Value="21,0,0,0" />
<Setter Property="Padding" Value="9,3,0,0" />
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="VerticalAlignment" Value="Top" />
</Style>
</Application.Resources>
<Grid>
<Expander>
<TextBlock Text="I am some content. I have disowned my default header." Margin="10,5" />
</Expander>
<TextBlock Text="I'm filling in for the default header. You'll like me better anyway."
Style="{StaticResource ResourceKey=ExpanderHeader}"/>
</Grid>
答案 1 :(得分:0)
我发布了问题here的解决方案(与Ben的评论相同的链接)。