我想检查文本块的文本值,如果值是xyz。我不想任何操作,但如果文本值是'#FF84312F'我想设置此文本为文本的前景颜色。下面是我的代码。我如何才能实现这一点。请帮助我。
<TextBlock Text="#FF84312F">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Text, RelativeSource={RelativeSource Self}}" Value="*#">
<Setter Property="Foreground" Value="Red"/>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
3条答案
按热度按时间eivnm1vs1#
试试这个:
或者这样:
它会无条件或有条件地(使用
Trigger
)将Foreground
设定为Text
属性所指定的值。qyswt5oh2#
注意事项:
此答案基于answer provided by mm8的注解
可以使用转换器将字符串转换为
SolidColorBrush
:转换器类:
XAML文件:
wfsdck303#
根据您的意见:
我想要的是。我必须检查文本块文本,如果文本块文本是颜色代码,然后分配该颜色代码到前景。就是这样
如果
Binded
文本值是Color
代码,则此操作将更改Textblock
Foreground
的Color
,否则default color
将更改为shown
。或