我的MainViewModel
中有一个引用,该引用在运行时可以为null。在那种情况下,我希望按钮(WPF)禁用自身,并且如果该引用不再为null,则应该启用自身。我想通过数据绑定解决该任务,但是我不确定如何对数据绑定执行空检查。我的按钮:
<Button x:Name="SomeButton" IsEnabled="{Binding Path=NullableProperty , Mode=OneWay}" />
答案 0 :(得分:2)
您可以使用 DataTrigger :
示例:
<Button Content="Click">
<Button.Style>
<Style TargetType="Button">
<Style.Triggers>
<DataTrigger Binding="{Binding CanContainNull}" Value="{x:Null}">
<Setter Property="IsEnabled" Value="False"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
和ViewModel属性:
public string CanContainNull
{
get
{
return _canContainNull;
}
set
{
_canContainNull = value;
RaisePropertyChanged();
}
}
答案 1 :(得分:-1)
仅注意到您可以将数据绑定的annotations
设置为TargetNullValue
,实际上可以完成所有操作。