首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WinRT中的DataTrigger?

WinRT中的DataTrigger?
EN

Stack Overflow用户
提问于 2011-09-16 10:27:13
回答 5查看 9.7K关注 0票数 18

我在WinRT参考中找到了EventTrigger,但是我找不到DataTrigger。我也不能在应用程序中使用它。

有人能证实WinRT中真的缺少DataTrigger吗?EventTrigger是WinRT中唯一可用的触发器吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-06-12 04:17:21

我不知道它是什么时候改变的,但是我把DataTriggerBehaviorGoToStateAction结合起来应该可以解决你的问题……

命名空间导入

代码语言:javascript
复制
xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions" 
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" 
xmlns:Interactivity="using:Microsoft.Xaml.Interactivity" 
xmlns:Core="using:Microsoft.Xaml.Interactions.Core"

ViewSateManager放置在根元素上

代码语言:javascript
复制
<VisualStateManager.VisualStateGroups>
    <VisualStateGroup x:Name="Common">
        <VisualStateGroup.Transitions>
            <VisualTransition GeneratedDuration="0" To="Online">
                <Storyboard>
                    <ColorAnimation Duration="0" To="Lime" Storyboard.TargetProperty="(TextBlock.Foreground).(SolidColorBrush.Color)" Storyboard.TargetName="Name" />
                </Storyboard>
            </VisualTransition>
            <VisualTransition GeneratedDuration="0" To="Offline">
                <Storyboard>
                    <ColorAnimation Duration="0" To="Red" Storyboard.TargetProperty="(TextBlock.Foreground).(SolidColorBrush.Color)" Storyboard.TargetName="Name" />
                </Storyboard>
            </VisualTransition>
        </VisualStateGroup.Transitions>
        <VisualState x:Name="Online" />
        <VisualState x:Name="Offline" />
    </VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Interactivity:Interaction.Behaviors>
    <Core:DataTriggerBehavior Binding="{Binding Active}" Value="True">
        <Core:GoToStateAction StateName="Online" />
    </Core:DataTriggerBehavior>
    <Core:DataTriggerBehavior Binding="{Binding Active}" Value="False">
        <Core:GoToStateAction StateName="Offline" />
    </Core:DataTriggerBehavior>
</Interactivity:Interaction.Behaviors>
票数 2
EN

Stack Overflow用户

发布于 2011-09-16 23:18:17

WinRT XAML目前不支持DataTrigger。

附录,作者: Mike Brown

Blend SDK for Silverlight提供了一个类似于数据触发器的API,DataTrigger API已经被所取代。由于附加的行为模式在WinRT中工作,因此也可以执行相同的操作。

票数 20
EN

Stack Overflow用户

发布于 2013-10-11 22:59:47

这个似乎在WinRT中实现触发器的项目怎么样:http://winrttriggers.codeplex.com/

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7439532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档