레이블, 단추 및 텍스트 상자가있는 표가 있습니다. forground의 값을 "false"로 설정하려면 & 버튼의 "IsEnabled"속성을 false로 설정하고 싶습니다. 그러나 나는 "Targetame 속성을 스타일 설정자에 설정할 수 없으므로이 datatrigger에서 targetname에 setter를 설정할 수 없습니다." 어떻게 하나의 방아쇠와 여러 요소에 대한 setters 사용할 수 있도록이 문제를 해결할 수, 내가 갈 수있는 Button.Styletriggers 정확히 동일한 datatrigger 넣을 수 있지만 아마도 거기에 tih 할 수있는 더 좋은 방법은 무엇입니까?WPF on trigger 다른 컨트롤에서 여러 설정 자 수행
<Button Content="Save" Click="btnsave_Click" Grid.Column="1" Grid.Row="2" x:Name="btnsave" IsEnabled="True" />
<Label Content="{Binding ElementName=txtclc, Path=Text, Converter={StaticResource convertcode}}" Name="lblcheckclc" Grid.Row="1" Grid.Column="2">
<Label.Resources>
<Style TargetType="{x:Type Label}">
<Setter Property="Foreground" Value="Green" />
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=lblcheckclc, Path=Content}" Value="Invalid">
<Setter Property="Foreground" Value="Red" />
<Setter TargetName="btnsave" Property="IsEnabled" Value="False" /> <!--This line is the problem-->
</DataTrigger>
</Style.Triggers>
</Style>
</Label.Resources>
</Label>
PS : 나는 다음 2 세터를 언급 라벨의 값이 = "잘못된는"다음를 forground이
여기 암시 적 스타일을 사용하려는 특별한 이유는 무엇입니까? 대신을 의미하지 않습니까? –
@ Baboon 나는 몰라.하지만 똑같지 않니? – Maximc
동일하지 않습니다. 암시 적 스타일은 특정 FrameworkElement의 전역 설정자를위한 것입니다. 지금은 그 스타일을 레이블 자체가 아니라 레이블의 하위에만 적용한다고 생각합니다. 나는 틀릴 수 있었다. –