MultiDataTrigger с проблемой свойств зависимостей - PullRequest
0 голосов
/ 10 октября 2018
<MultiDataTrigger>
    <MultiDataTrigger.Conditions>
        <Condition Binding="{Binding ElementName=Switcher, Path=On}" Value="True"></Condition>
        <Condition Binding="{Binding ElementName=Switcher, Path=IsMouseOver}" Value="True"></Condition>
    </MultiDataTrigger.Conditions>
    <!-- Fire when IsMouseOver is set to true and On is set to true -->
    <MultiDataTrigger.EnterActions>                                        
        <BeginStoryboard>
            <Storyboard>
                <DoubleAnimation Storyboard.TargetName="Slider" Storyboard.TargetProperty="Width" To="35" Duration="0:0:0.3"/>
                <ThicknessAnimation Storyboard.TargetName="Slider" Storyboard.TargetProperty="Margin" To="30 5 5 5" Duration="0:0:0.3"/>
            </Storyboard>
        </BeginStoryboard>
    </MultiDataTrigger.EnterActions>
    <!-- Fire when IsMouseOver is set to false and On is set to true -->
    <MultiDataTrigger.ExitActions>
        <BeginStoryboard>
            <Storyboard>
                <DoubleAnimation Storyboard.TargetName="Slider" Storyboard.TargetProperty="Width" To="30" Duration="0:0:0.3"/>
                <ThicknessAnimation Storyboard.TargetName="Slider" Storyboard.TargetProperty="Margin" To="35 5 5 5" Duration="0:0:0.3"/>
            </Storyboard>
        </BeginStoryboard>
    </MultiDataTrigger.ExitActions>
</MultiDataTrigger>

<MultiDataTrigger>
    <MultiDataTrigger.Conditions>
        <Condition Binding="{Binding ElementName=Switcher, Path=On}" Value="False"></Condition>
        <Condition Binding="{Binding ElementName=Switcher, Path=IsMouseOver}" Value="True"></Condition>
    </MultiDataTrigger.Conditions>
    <!-- Fire when IsMouseOver is set to true and On is set to false -->
    <MultiDataTrigger.EnterActions>
        <BeginStoryboard>
            <Storyboard>
                <DoubleAnimation Storyboard.TargetName="Slider" Storyboard.TargetProperty="Width" To="35" Duration="0:0:0.3"/>                                                
            </Storyboard>
        </BeginStoryboard>
    </MultiDataTrigger.EnterActions>
    <!-- Fire when IsMouseOver is set to false and On is set to false -->
    <MultiDataTrigger.ExitActions>
        <BeginStoryboard>
            <Storyboard>
                <DoubleAnimation Storyboard.TargetName="Slider" Storyboard.TargetProperty="Width" To="30" Duration="0:0:0.3"/>                                                
            </Storyboard>
        </BeginStoryboard>
    </MultiDataTrigger.ExitActions>
</MultiDataTrigger>

У меня есть следующие мульти-триггеры данных.Свойство зависимости также проверяется, поэтому я не публикую его здесь.У меня есть комментарии к каждому триггеру данных, входящему и выходящему из действий, которые они должны делатьВторой работает просто отлично.Однако я не могу заставить работать первый!Есть ли какой-нибудь возможный способ работы триггера данных, но моя раскадровка переопределена

...