我有一个搜索框,我试图通过使用"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>
当前无法在hasdata
更改时通知UI。您需要实现INotifyPropertyChanged
接口,或者使hasdata
成为DependencyProperty
。