{{1}}
如何从另一种风格访问故事板?接收"找不到名为' GridStoryBoard'的资源。资源名称区分大小写。"
答案 0 :(得分:0)
你做不到。您需要将Storyboard
定义为单独的资源:
<Window.Resources>
<Storyboard x:Key="GridStoryBoard" >
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[3].(TranslateTransform.X)">
<EasingDoubleKeyFrame KeyTime="0:0:0.25" Value="-358" />
<EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="2" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
<Style x:Key="GridStyle" TargetType="{x:Type Grid}">
</Style>
<Style x:Key="ButtonStyle" TargetType="{x:Type Button}">
<Style.Triggers>
<EventTrigger RoutedEvent="ButtonBase.Click">
<BeginStoryboard Storyboard="{StaticResource GridStoryBoard}" />
</EventTrigger>
</Style.Triggers>
</Style>
</Window.Resources>
然后任何Style
都可以访问它。如果您将其定义为特定Style
的资源,则只能由该特定Style
使用。这就是为什么你首先要在那里定义它。因此,如果您希望能够在多个样式中使用它,那么在<Style.Resources>
中定义它是没有意义的。