【问题标题】:Xamarin XAML DataTrigger AnimationsXamarin XAML DataTrigger 动画
【发布时间】:2018-08-29 16:50:02
【问题描述】:

我已将动画定义为当通过这样的 EventTrigger 调用时可以工作的资源:

  <ContentPage.Resources>
    <ResourceDictionary>
        <animations:StoryBoard x:Key="FadeInLogo" Target="{x:Reference Logo}">
            <animations:FadeToAnimation Opacity="1" Duration="700" />
        </animations:StoryBoard>
    </ResourceDictionary>   
   <ContentPage.Resources>

然后

<ContentPage.Triggers>
    <EventTrigger Event="Appearing">
        <triggers:BeginAnimation  Animation="{StaticResource FadeInLogo}" />

不过

当我尝试通过 DataTrigger 调用相同的动画时,编译器说需要 TargetType 的属性来创建 DataTrigger 对象???

    <DataTrigger Binding="{Binding IsOkToLogin}" Value="true" >
        <DataTrigger.EnterActions >
            <triggers:BeginAnimation  Animation="{StaticResource FadeInLogo}"></triggers:BeginAnimation>
        </DataTrigger.EnterActions>
    </DataTrigger>

【问题讨论】:

    标签: xaml animation xamarin xamarin.forms


    【解决方案1】:

    每个触发器必须(重新)定义 TargetType:

      <ContentPage.Triggers>
        <DataTrigger TargetType="ContentPage" Binding="{Binding IsOkToLogin}" Value="true" >
            <DataTrigger.EnterActions >
                <triggers:BeginAnimation  Animation="{StaticResource FadeInLogo}"></triggers:BeginAnimation>
            </DataTrigger.EnterActions>
        </DataTrigger>
      </ContentPage.Triggers>
    

    【讨论】:

    • “触发器:”指的是什么命名空间?
    • 这只是问题的复制粘贴,与错误没有直接关联。询问@BahaiResearch.com
    猜你喜欢
    • 2013-09-24
    • 2016-08-06
    • 1970-01-01
    • 2019-02-19
    • 2021-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-10
    相关资源
    最近更新 更多