2016-04-26 7 views
5

Quando provo ad avviare la mia app con questo codice, viene generata un'eccezione che dice che il testo dell'errore non può essere trovato.Trigger storyboard su Button clic?

<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> 

Sembra qualcosa di sbagliato con la proprietà dell'evento indirizzato. Cosa risolverà questa eccezione.

+0

Avevo lasciato un commento, poi ho realizzato che non ho prestato attenzione. Questo modo di farlo come se fossi abituato a WPF non è accettato in UWP. Dovrai o attivare i trigger di interazione o semplicemente fare un rapido metodo Storyboard.Begin() per chiamarlo tramite Click = "MethodName" sul pulsante con un solo liner di codebehind. Se non fossi di fretta ti farei un esempio ma sono sicuro che qualcuno leggerà questo e afferrerà i punti. :) –

+0

Speravo senza codice dietro lol. Sto cercando di attivare i trigger di interazione, ma non ho capito come aggiungere una storyboard ad esso. si lamenta quando lo faccio. – shady

risposta

4

Penso che il modo migliore sia utilizzare un comportamento. Il loro scopo è estendere le funzioni dei controlli di base combinati con la riusabilità. Si può vedere un frammento proprio qui su Windows blog (e come la vedo io, è a part of the framework in Namespace: Microsoft.Xaml.Interactions.Core Assemblea: Microsoft.Xaml.Interactions in 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>