Mas*_*987 3 xaml binding xamarin.forms
显然,在 Xamarin 表单中没有使用 FallbackValue 或 TargetNullValue 的选项,我如何使用转换器来完成任务?
如果数据绑定对象为空,我希望将可见性默认为空。
空转换器.cs
public class NullConverter : IMarkupExtension, IValueConverter
{
public object IsNullValue { get; set; }
public object IsNotNullValue { get; set; }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return value == null ? IsNullValue : IsNotNullValue;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
public object ProvideValue(IServiceProvider serviceProvider)
{
return this;
}
}
Run Code Online (Sandbox Code Playgroud)
XAML
<Entry Text="{Binding WhateverProperty}" />
<Button IsVisible="{Binding WhateverProperty, Converter={local:NullConverter IsNullValue=False, IsNotNullValue=True}}" />
Run Code Online (Sandbox Code Playgroud)
对于我的测试,WhateverProperty是一个最初设置为 null 的字符串,每当我更新 时Entry,就会显示该按钮。当然,您可以将它与任何类型的属性一起使用。
| 归档时间: |
|
| 查看次数: |
1366 次 |
| 最近记录: |