我有一个搜索框,我正在尝试使用“ 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

关于c# - WPF DataTrigger绑定(bind)不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17598720/

10-12 02:03