У меня есть Expander в окне приложения, над которым я работаю, Xaml выглядит следующим образом:
<Border Grid.Row="4" Grid.ColumnSpan="4" Grid.Column="0" BorderThickness="0,1,0,0" BorderBrush="Gray">
<Grid>
<Expander x:Name="ReleaseNotes" HeaderTemplate="{StaticResource ExpanderHeader}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="17"/>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="0" />
</Grid.ColumnDefinitions>
<ScrollViewer Height="150" Padding="0,0,5,0" Grid.Column="1" VerticalScrollBarVisibility="Auto">
<TextBlock FontSize="10" Text="{Binding ReleaseNotesText}" TextWrapping="Wrap"/>
</ScrollViewer>
</Grid>
</Expander>
</Grid>
</Border>
И шаблон заголовка Xaml:
<Grid.Resources>
<DataTemplate x:Key="ExpanderHeader">
<TextBlock Text="Release notes">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="#ffcc00"/>
</Trigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
</DataTemplate>
</Grid.Resources>
Теперь то, что я хотел бы сделать, это изменить свойство Text
элемента TextBlock
в HeaderTemplate
, у меня есть тема для окна и расширителя, я пытался использовать Header
, но это не дает желаемых результатов, тема имеет анимацию, и при использовании заголовка я теряю анимацию. Я также пытался использовать события Expanded и Collapsed, но не могу понять, как изменить текстовое значение. Любая помощь очень ценится.
Expander
или другой текст при открытии/закрытии? - person dkozl   schedule 06.08.2015