WPF: DataTrigger с условием нескольких свойств - PullRequest
0 голосов
/ 11 февраля 2019

Итак, у меня есть это DataTrigger:

<DataTrigger Binding="{Binding Path=IsFilesSelected}" Value="True">
    <DataTrigger.EnterActions>
        <StopStoryboard BeginStoryboardName="EndAnimation"/>
        <BeginStoryboard Name="NewAnimation">
            <Storyboard>
                <ThicknessAnimation Storyboard.TargetProperty="Margin"                                                                        
                                    From="0,50,0,0"                                                                         
                                    To="0,0,0,0"                                                                       
                                    DecelerationRatio=".9"                                                                   
                                    Duration="0:0:0.3" />
            </Storyboard>
        </BeginStoryboard>
    </DataTrigger.EnterActions>
</DataTrigger>

И, как вы можете видеть, это DataTrigger запускается, когда мое свойство IsFilesSelected меняется на True, и мне интересно, как назначить другое свойствои примите во внимание его значение, когда определите, нужно ли мне начинать мой DataTrigger.

1 Ответ

0 голосов
/ 12 февраля 2019

Что вам нужно, так это MultiDataTrigger с документацией здесь .

Представляет триггер, который применяет значения свойств или выполняет действия, когда связанные данные соответствуют наборуусловия.

Пример снят с веб-сайта MSDN

<MultiDataTrigger>
    <MultiDataTrigger.Conditions>
        <Condition Binding="{Binding Path=Name}" Value="Portland" />
        <Condition Binding="{Binding Path=State}" Value="OR" />
    </MultiDataTrigger.Conditions>
    <Setter Property="Background" Value="Cyan" />
</MultiDataTrigger>

В приведенном выше примере свойство Background будет установлено, когда оба параметра Name =="Портленд" И State == "ИЛИ".

...