У меня есть style trigger
на моих кнопках IsEnabled
свойство, которое срабатывает и шевелит мои кнопки, когда установлено значение True
. Это отлично работает, если я отключу, а затем снова включите кнопку из кода (MVVM) после загрузки и запуска приложения. Тем не менее, trigger
не срабатывает при начальной загрузке. Таким образом, все мои кнопки, которые включены по умолчанию, не покачиваются. Что я могу сделать, чтобы заставить триггер работать при загрузке?WPF Style Property Trigger не срабатывает при загрузке
Вот мой Style
из моего App.xaml
<Setter Property="RenderTransformOrigin" Value="0.5,0" />
<Setter Property="RenderTransform">
<Setter.Value>
<RotateTransform />
</Setter.Value>
</Setter>
<Style TargetType="{x:Type Button}" x:Key="btnDefaultStyle">
<Style.Triggers>
<Trigger Property="IsEnabled" Value="True">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard TargetProperty="RenderTransform.Angle" RepeatBehavior="Forever">
<DoubleAnimation From="0" To="-5" BeginTime="0:0:0:5.00" Duration="0:0:0.05"/>
<DoubleAnimation From="-5" To="0" BeginTime="0:0:0:5.05" Duration="0:0:0.05"/>
<DoubleAnimation From="0" To="4" BeginTime="0:0:0:5.10" Duration="0:0:0.05"/>
<DoubleAnimation From="4" To="0" BeginTime="0:0:0:5.15" Duration="0:0:0.05"/>
<DoubleAnimation From="0" To="-3" BeginTime="0:0:0:5.20" Duration="0:0:0.05"/>
<DoubleAnimation From="-3" To="0" BeginTime="0:0:0:5.25" Duration="0:0:0.05"/>
<DoubleAnimation From="0" To="2" BeginTime="0:0:0:5.30" Duration="0:0:0.05"/>
<DoubleAnimation From="2" To="0" BeginTime="0:0:0:5.35" Duration="0:0:0.05"/>
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
<BeginStoryboard>
<Storyboard TargetProperty="RenderTransform.Angle">
<DoubleAnimation From="0" To="0" BeginTime="0:0:0:0" Duration="0:0:0.0"/>
</Storyboard>
</BeginStoryboard>
</Trigger.ExitActions>
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="{x:Type Button}" BasedOn="{StaticResource btnDefaultStyle}" />
EventTriggers RoutedEvent
, т.е. RoutedEvent="Window.Loaded"
бесполезно, поскольку оно отменяет событие Property IsEnable
, и поэтому мои отключенные кнопки также покачиваются.
Должны ли они показываться неограниченно, или просто на короткое мгновение после загрузки формы? – Logan
Бессрочно. Каждые 5 секунд. Но только если включено. –