使用MvvmCross在Xamarin.iOS中进行条件数据绑定

时间:2018-03-19 17:54:50

标签: xamarin data-binding xamarin.ios mvvmcross

这是我目前所处的情景/困境。

我有一个包含占位符Image的UIImageView。

myImageView = new MvxImageView
{
 Image = ImagePlaceHolder
};

我将View中的MvxImageViewLoader绑定到ViewModel中的字符串属性(URL)。

imageLoader = new MvxImageViewLoader(() => myImageView);

所有这些工作正常,并在存在有效URL时正确显示图像。

问题在于,假设绑定的URL / imageLoader不包含字符串。

我想在图像视图的位置显示UILabel,而不是默认返回占位符图像。

因此,这个UILabel也将被绑定一些文本。

...

现在我考虑一下,我相信一个可能的解决方案是在ViewModel上创建一个布尔属性,并根据URL的值更新其状态,即

string.IsNullOrWhiteSpace(URL).

然后我可以将UILabel的.Hidden属性绑定到ViewModel中的这个布尔属性,以确定是否显示或隐藏Label。

不确定如果我要删除它或将其删除......将来可能对某人有帮助。

..我猜有时候最好把它说出来......即使你正在输入它。

0 个答案:

没有答案