几个MultiDataTriggers仅适用于最后一个

时间:2013-03-30 08:34:37

标签: c# wpf xaml multidatatrigger

UserControl我的DP类型enumGroupStyle类型eGroupStyle)和类型为bool的DP({{1} })。我需要在所有可能的条件下开始一些故事板。但最后IsGrouped只能起作用。我哪里错了?此外,我想知道是否存在一种更简单的方法来考虑这些条件。 (检查MultiDataTrigger一次。)

C#:

IsGrouped

XAML:

enum eGroupStyle
{
    GroupStyle1,
    GroupStyle2,
    ∙∙∙,
    GroupStyleN,
}

1 个答案:

答案 0 :(得分:9)

我发现了!我需要在下面的退出操作中删除之前的故事板。现在它有效:)

<MultiDataTrigger>
    <MultiDataTrigger.Conditions>
        <Condition Binding="{Binding Path=GroupStyle}" Value="GroupStyle1"/>
        <Condition Binding="{Binding Path=IsGrouped}" Value="False"/>
    </MultiDataTrigger.Conditions>
    <MultiDataTrigger.EnterActions>
        <BeginStoryboard x:Name="BeginStoryboard_TurnToUnselectedStyle1" Storyboard="{StaticResource Storyboard_TurnToUnselectedStyle1}"/>
    </MultiDataTrigger.EnterActions>
    <MultiDataTrigger.ExitActions>
        <RemoveStoryboard BeginStoryboardName="BeginStoryboard_TurnToUnselectedStyle1"/>
    </MultiDataTrigger.ExitActions>
</MultiDataTrigger>