2

我的应用程序中有两张图片(一辆汽车和一辆摩托车)和一个文本框。当我在文本框中写汽车时,应该选择图像汽车(通过制作蓝色或红色边界可见),另一个(摩托车)应该具有灰色效果。

当我在文本框中写摩托车时,反之亦然,即摩托车应该有一个边界并且汽车是灰色的。有谁知道我怎样才能使它成为可能?

4

1 回答 1

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您定义的Datatriggers 中设置默认值,该 s 将有条件地更改这些值

于 2013-02-08T14:41:33.117 回答