Вы можете использовать конвертер, чтобы скрыть всю метку. Я предполагаю, что Item.Size
является строкой, однако в конвертере вы можете привести к правильному типу. Вот образец
public class OzViewConverter : IValueConverter
{
#region IValueConverter implementation
public object Convert (object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var test = value as string; //here you can change the cast, depending on type object you are Binding
if (!string.IsNullOrEmpty(test))
{
return true;
}
return false;
}
public object ConvertBack (object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException ();
}
#endregion
}
Тогда на вашей странице
<ContentPage.Resources>
<ResourceDictionary>
<converter:OzViewConverter x:Key="OzViewConverter" />
</ResourceDictionary>
</ContentPage.Resources>
<Label IsVisible="{Binding Item.Unit, Converter={StaticResource OzViewConverter}}">
<Label.FormattedText>
<FormattedString>
<Span Text="Size: "/>
<Span FontAttributes="Bold" Text="{Binding Item.Size , Mode=OneWay}"/>
<Span FontAttributes="Bold" Text="{Binding Item.Unit, Mode=OneWay}"/>
</FormattedString>
</Label.FormattedText>
</Label>