我正在为我的控件创建一个XAML样式。
下面的代码是用于设置stackpanel颜色的,它有效地工作,但是我还想做一些别的事情。如果触发器被激活,我想为堆栈面板内所有子项设置字体颜色。
目前我只有文本块(textblock)在stackpanel内部,我知道我可以轻松创建一个单独的文本块样式。但是如果此样式被触发,它只会影响一个而不是所有文本块(textblocks)。 但是我希望在面板(mouseover trigger)上进行触发时立即更改堆栈面板内的所有项。
这在XAML中是否可能,还是我必须编写常规事件?
<Style x:Key="XStack" TargetType="StackPanel">
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="White" Offset="0"/>
<GradientStop Color="SkyBlue" Offset="6"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<!-- Trigger-->
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True" >
<Setter Property="Background" Value="SkyBlue"/>
</Trigger>
</Style.Triggers>
</Style>