如何解决当另一个Texblock值更改时,更改Texblock样式
当某些文本块更改时,我试图更改另一个文本块的样式。我正在尝试使用datatrigger。这是正确的方法吗?这是我的代码
</TextBlock>
<TextBlock Name="txtChangeTo" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="48" Text="2">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=txtChange,Path=Text,UpdateSourceTrigger=PropertyChanged}" Value="">
<Setter Property="FontWeight" Value="Bold" />
<Setter Property="Foreground" Value="red"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
<Button x:Name="btnChangeValue" Content="Change Value" Click="btnChangeValue_Click"></Button>
</StackPanel>
谢谢。
解决方法
您的代码可以工作,但是我建议您使用MVVM,以便样式由ViewModel决定,而不是像现在一样由View决定。第一个TextBlock应该更改ViewModel中的属性,第二个应该基于ViewModel状态确定其状态。以您的方式引用其他控件会使代码真正易碎。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。