WPF DataTrigger绑定无法正常工作

时间:2013-07-11 16:27:16

标签: c# wpf wpf-controls

我有一个搜索框,我试图通过使用“hasdata”检查它是否为空,如果为空则返回false,否则返回true,但DataTrigger绑定不起作用。有人可以指出我正在做错的方向。

代码:

public bool hasdata
{
    get { if (searchBox.Text.Count() == 0) return false; else return true; }
}

XAML:

<telerik:RadWatermarkTextBox x:Name="searchBox"/>
<Image Source="SomeImage.png" >
    <Image.Style>
        <Style TargetType="{x:Type Image}">
            <Style.Triggers>
                <DataTrigger Binding="{Binding Path=hasdata}" Value="True">
                    <Setter Property="Visibility" Value="Visible"/>
                </DataTrigger>
                <DataTrigger Binding="{Binding Path=hasdata}" Value="False">
                    <Setter Property="Visibility" Value="Hidden"/>
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Image.Style>
</Image>

1 个答案:

答案 0 :(得分:4)

hasdata发生变化时,UI无法收到通知。您需要实施INotifyPropertyChanged界面或将hasdata设为DependencyProperty