2009-07-27 4 views
2

다음과 같은 데이터 트리거 설정이 있습니다. 컨트롤 템플릿데이터 트리거가 작동하지 않음

<DataTrigger Binding="{Binding Path=IsDragged}" 
      Value="True"> 
    <DataTrigger.EnterActions> 
     <BeginStoryboard Storyboard="{StaticResource Active}" /> 
    </DataTrigger.EnterActions> 
    <DataTrigger.ExitActions> 
     <BeginStoryboard Storyboard="{StaticResource Unactive}" /> 
    </DataTrigger.ExitActions> 
</DataTrigger> 

일반적으로 적어도 한 번 (항상은 아님) 실행되며 어떤 시점에서는 중지됩니다. 몇 가지 추가 흥미로운 메모 :

  • MultiDataTrigger에서 동일한 속성이 설정됩니다.이 트리거는 항상
  • 을 발사합니다.
  • 같은 스토리 보드가 다른 트리거에서 참조되며이 트리거가 실패한 후에도 계속 실행됩니다.

편집 : MultiDataTriggers는 다음과 같이 설정됩니다.

<MultiDataTrigger> 
    <MultiDataTrigger.Conditions> 
     <Condition Binding="{Binding Path=IsActive}" 
        Value="True" /> 
     <Condition Binding="{Binding Path=IsDragged}" 
        Value="False" /> 
     <Condition Binding="{Binding Path=IsInCart}" 
        Value="False" /> 
    </MultiDataTrigger.Conditions> 
    <MultiDataTrigger.EnterActions> 
     <BeginStoryboard x:Name="ShowTag_BeginStoryboard" 
         Storyboard="{StaticResource ShowTag}" /> 
    </MultiDataTrigger.EnterActions> 
    <MultiDataTrigger.ExitActions> 
     <BeginStoryboard x:Name="HideTag_BeginStoryboard" 
         Storyboard="{StaticResource HideTag}" /> 
    </MultiDataTrigger.ExitActions> 
</MultiDataTrigger> 

답변

1

그냥 추측하지만, 내가 전에 이런 일에 실행했습니다과 TU 다음 MultiDataTriggers이 설정 될 때 다음과 서로간에 충돌하기 때문에 다른 스토리 보드를 시작하기 전에 각 스토리 보드를 중지해야한다고했습니다.

두 개의 StopStoryboard 작업을 DataTrigger에 추가하십시오. 하나는 활성 스토리 보드를 중지하고 다른 하나는 비활성 스토리 보드를 중지하는 것입니다.

+0

지금까지 일관되게 문제가있는 것으로 보입니다. –