我有自定义可见性转换器。
public class BackupDateVisibilityConverter : IMvxValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var backupDate = (DateTime)value;
var test = backupDate == new DateTime() ? MvxVisibility.Collapsed : MvxVisibility.Visible;
return test;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
首先正确返回MvxVisibility.Collapsed并在我更新值MvxVisibility.Visible之后。但是当返回Collapsed并且返回可见时隐藏元素是可见的。 在Windows上,它完全被忽略。
这是我的约束力:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
local:MvxBind="Visible BackupDateVisibility(BackupLastModified)">
当我绑定Visibility而不是Visible时,它就像在Windows上一样无效。
和
<StackPanel Orientation="Horizontal"
Margin="0,15,0,7"
Visibility="{Binding BackupLastModified, Converter={StaticResource BackupDateVisibilityConverter}}">
我做错了什么?