XAML 형식의 트리거 집합이 있고 나에게 왜 하나의 집합이 작동하는지 파악할 수없고 다른 집합은 작동하지 않습니다. 똑같은 변수에 묶여 있음에도 불구하고Label 및 GroupBox 트리거가 작동하지 않고 StackPanel에서 동일한 트리거가 작동합니다.
첫째, 일을 트리거 :
이<StackPanel Orientation="Vertical" Margin="25,0,0,0">
<StackPanel.Style>
<Style TargetType="{x:Type StackPanel}">
<Setter Property="IsEnabled" Value="False" />
<Style.Triggers>
<DataTrigger Binding="{Binding GorOption.InternalName}" Value="Separator">
<Setter Property="IsEnabled" Value="True" />
</DataTrigger>
</Style.Triggers>
</Style>
</StackPanel.Style>
</StackPanel>
<StackPanel Orientation="Vertical" Margin="25,0,0,0">
<StackPanel.Style>
<Style TargetType="{x:Type StackPanel}">
<Setter Property="IsEnabled" Value="False" />
<Style.Triggers>
<DataTrigger Binding="{Binding GorOption.InternalName}" Value="BubblePoint">
<Setter Property="IsEnabled" Value="True" />
</DataTrigger>
</Style.Triggers>
</Style>
</StackPanel.Style>
</StackPanel>
이 트리거 아름답게 작동합니다. 자, GroupBox와 매우 유사한 트리거를 가진 Label이 있습니다. 작동하지 않는
<GroupBox Header="Recombined Gas" Grid.Row="1" Grid.ColumnSpan="2">
<GroupBox.Style>
<Style TargetType="{x:Type GroupBox}">
<Setter Property="Header" Value="Recombined Gas" />
<Style.Triggers>
<DataTrigger Binding="{Binding GorOption.InternalName}" Value="Separator">
<Setter Property="Header" Value="Separator Gas" />
</DataTrigger>
<DataTrigger Binding="{Binding GorOption.InternalName}" Value="BubblePoint">
<Setter Property="Header" Value="Dissolved Gas" />
</DataTrigger>
</Style.Triggers>
</Style>
</GroupBox.Style>
</GroupBox>
을 그리고 라벨 트리거 : 작동하지 않는 트리거 내가 여기에 근본적인 뭔가를 놓친 거지 같은
<Label Content="Reombined GOR" Width="90">
<Label.Style>
<Style TargetType="{x:Type Label}">
<Setter Property="Content" Value="Recombined GOR" />
<Style.Triggers>
<DataTrigger Binding="{Binding GorOption.InternalName}" Value="Separator">
<Setter Property="Content" Value="Separator GOR" />
</DataTrigger>
<DataTrigger Binding="{Binding GorOption.InternalName}" Value="BubblePoint">
<Setter Property="Content" Value="Dissolved GOR" />
</DataTrigger>
</Style.Triggers>
</Style>
</Label.Style>
</Label>
는 느낌,하지만 지금은 저를 이스케이프합니다. 보시다시피 모든 트리거는 동일한 값으로 바인딩되고 동일한 옵션에서 트리거됩니다. 단일 트리거 블록에서 동일한 변수에 바인딩하려고하는 두 개의 DataTrigger 블록이 있기 때문입니까? 저는 이것이 이것이 문제라고 상상할 수 없습니다. 사실 저는 다른 곳에서도 이것을 할 것이라고 확신합니다. 내가 인식하지 못하는 Label 및 GroupBox에 특정한 것이 있습니까?
따라서 XAML 태그의 첫 번째 값을 제거하십시오. 그것은 나를 위해 일했습니다. 나는 거기에 "방아쇠를 당"하는 것이 좋을 것이라고 생각했다. –