Идея:Как реализовать идею внутри стиля?
Внутри окна есть сетка. Мне нужно создать стиль для 2 сценариев.
Сценарий 1:
- Мышь входит в сетку.
- Линия сетки для мыши
- Grid's background is Red.
Сценарий 2:
- Мышь входит в сетку.
- Мышь прессы на сетке.
- Мышь листья сетки.
- Grid's background становится синим.
Вскоре: если мышь надавит - сделайте ее синей, если нет - сделайте ее красной.
Я попытался, но установить Binding или DynamicResource на замораживаемые объекты, такие как Storyboard внутри Style, невозможно.
XAML:
<Window.Resources>
<Style x:Key="GridStyle1" TargetType="{x:Type Grid}">
<Style.Resources>
<Storyboard x:Key="OnMouseLeave1">
<ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)" Storyboard.TargetName="{x:Null}">
<EasingColorKeyFrame KeyTime="0:0:0.2" Value="Red"/>
</ColorAnimationUsingKeyFrames>
</Storyboard>
</Style.Resources>
<Style.Triggers>
<EventTrigger RoutedEvent="UIElement.MouseLeave">
<BeginStoryboard Storyboard="{StaticResource OnMouseLeave1}"/>
</EventTrigger>
</Style.Triggers>
<Setter Property="Background" Value="Black"/>
</Style>
</Window.Resources>
<Grid x:Name="grid" Style="{DynamicResource GridStyle1}" Background="White"/>