如何在XAML中设置标签的可见性,以便在该标签的Text属性不为null的地方可见?
我有此代码:
<Label Grid.Row="0" Text="*" IsVisible="emptyLabel1 == null"/>
<Label Grid.Row="0" Text="{Binding EmptyLabel1}" IsVisible="emptyLabel1 == null"/>
<Label Grid.Row="1" Text="*" IsVisible="emptyLabel2 == null"/>
<Label Grid.Row="1" Text="{Binding EmptyLabel2}" IsVisible="emptyLabel2 == null"/>
在我的VM中,它看起来像这样:
private string emptyLabel1;
private string emptyLabel2;
public string EmptyLabel1
{
get { return emptyLabel1; }
set
{
if (value != emptyLabel1)
{
emptyLabel1 = value;
NotifyPropertyChanged("EmptyLabel1");
}
}
}
public string EmptyLabel2
{
get { return emptyLabel2; }
set
{
if (value != emptyLabel2)
{
emptyLabel2 = value;
NotifyPropertyChanged("EmptyLabel2");
}
}
}
我的问题是,似乎我无法对IsVisible进行任何条件的检查。
答案 0 :(得分:5)
我还没有尝试过,但是要在xaml中设置Label
的可见性需要这样做
<Label IsVisible="{Binding EmptyLabel1,
Converter={StaticResource StringNullOrEmptyBoolConverter}"
Text="{Binding EmptyLabel1}/>
有关更多信息,请检查 this