2016-04-26 90 views
5

当我尝试用这段代码启动我的应用程序时,它会抛出一个异常说错误文本找不到。点击按钮上的触发故事板?

<Button> 
<Button.Triggers> 
      <EventTrigger RoutedEvent="Button.Click"> 
       <BeginStoryboard> 
        <Storyboard> 
         <DoubleAnimation Duration="0:0:05" 
          To="1" From="0" 
          Storyboard.TargetName="ContentGrid" 
          Storyboard.TargetProperty="Opacity" /> 
        </Storyboard> 
       </BeginStoryboard> 
       </EventTrigger> 

     </Button.Triggers> 
</Button> 

似乎与路由事件属性有问题。什么将解决这个例外。

+0

我已经留下了一条评论,然后意识到我没有留意。这种做法就像你在WPF中习惯的那样,在UWP中不被接受。您可能需要执行交互触发器,或者只需执行一个快速的Storyboard.Begin()方法,通过按钮上的Click =“MethodName”使用一行代码隐藏来调用它。如果我不赶时间,我会弹出一个例子,但我肯定有人会读这个并抓住要点。 :) –

+0

我希望没有代码背后哈哈。我试图做互动触发器,但我还没有想出如何添加故事板。它在我做时抱怨。 – shady

回答

4

我认为最好的方法是使用行为。他们的目的是将基本控制的功能与可重用性相结合。你可以看到一个片段就在这里Windows blog(当我看到,它在命名空间a part of the frameworkMicrosoft.Xaml.Interactions.Core大会:Microsoft.Xaml.Interactions在Microsoft.Xaml.Interactions.dll)。

<Button x:Name="button"> 
    <Interactivity:Interaction.Behaviors> 
     <Core:EventTriggerBehavior EventName="Click"> 
     <Media:ControlStoryboardAction Storyboard="storyboard1"/> 
     </Core:EventTriggerBehavior> 
    </Interactivity:Interaction.Behaviors> 
</Button>