Using a WPF expander, I want the Header to change from See More to See Less when the control is expanded, and back to See More when it's collapsed again. I'd prefer a WPF pure solution, rather than a C# or other code behind method. I get the feeling this should be easy, but I'm struggling for the right terms to get a solution via google.
Thanks!
Old (I know), but this can be done with using two simple Trigger
without binding:
<Expander>
<Expander.Style>
<Style TargetType="Expander" >
<Style.Triggers>
<Trigger Property="IsExpanded" Value="True">
<Setter Property="Header" Value="See Less" />
</Trigger>
<Trigger Property="IsExpanded" Value="False">
<Setter Property="Header" Value="See More" />
</Trigger>
</Style.Triggers>
</Style>
</Expander.Style>
</Expander>
You could probably do this in a style trigger:
<Expander>
<Expander.Style>
<Style TargetType="Expander">
<Setter Property="IsExpanded" Value="False" />
<Setter Property="Header" Value="See More" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsExpanded,RelativeSource={RelativeSource Self}}" Value="True">
<Setter Property="Header" Value="See Less" />
</DataTrigger>
</Style.Triggers>
</Style>
</Expander.Style>
</Expander>
That's untested, but it should give you something to go on.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With