我的应用程序中有两张图片(一辆汽车和一辆摩托车)和一个文本框。当我在文本框中写车时,应该选择图像车(通过制作蓝色或红色边界可见),而另一个(摩托车)应该具有灰色效果。
当我在文本框中写摩托车时,反之亦然,即摩托车应该有一个边界,汽车会变灰。 有谁知道我怎么能让它成为可能?
答案 0 :(得分:1)
在图片中使用如下方法
<Border BorderThickness="2">
<Border.Style>
<Style TargetType="{x:Type Border}">
<Setter Property="BorderBrush" Value="LightGray"/>
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=targetTextBox, Path=Text}" Value="Car">
<Setter Property="BorderBrush" Value="Red"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Border.Style>
<Image>
<Image.Style>
<Style TargetType="{x:Type Image}">
<Setter Property="Opacity" Value="0.4"/>
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=targetTextBox, Path=Text}" Value="Car">
<Setter Property="Opacity" Value="1"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
</Border>
您还可以设置您想要的任何其他属性。 只需记住在Style
中设置默认值,即定义将有条件地更改这些值的Datatrigger