我尝试使用带有FieldBinding插件的Visibility插件,但没有运气。可见性绑定失败
型号的一面:
/// <summary>
/// Gets or sets the birthdate.
/// </summary>
/// <value>
/// The birthdate.
/// </value>
public DateTime? Birthdate { get; set; }
视图模型方面:
public class DisplayUserViewModel : BaseUserViewModel
{
/// <summary>
/// The user
/// </summary>
public readonly INC<User> User = new NC<User>();
}
查看边,第一次尝试:
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="@dimen/ListIconTwoLineTileHeight"
android:paddingRight="@dimen/ListIconTwoLineTextMarginRight"
local:MvxBind="Visibility User.Birthdate, Converter=Visibility">
第二个尝试:
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="@dimen/ListIconTwoLineTileHeight"
android:paddingRight="@dimen/ListIconTwoLineTextMarginRight"
local:MvxBind="Visibility Visibility(User.Birthdate)">
但相同的结果:
MvxBind (2574): 33.60 Failed to create target binding for binding Visibility for MvxValueConverterValueCombiner combiner-operation
我刚接过生日作为一个例子,但每一个能见度绑定失败(我有X绑定X错误消息)。
编辑1
其他人结合工作,我绑定了一堆文字,并且所有显示效果出色:
<TextView
style="@style/TextView.ListWithIcon.Single"
android:layout_marginTop="@dimen/ListIconTwoLineTextMarginTop"
local:MvxBind="Text User.FirstName" />
我也尝试绑定到一个INPC属性,相同结果。
EDIT 2
至于建议由Stuart,我想这:
<TextView
style="@style/TextView.ListWithIcon.Single"
android:layout_marginTop="@dimen/ListIconTwoLineTextMarginTop"
android:layout_marginLeft="@dimen/ListIconTextMarginLeft"
local:MvxBind="Text Visibility(User.Birthdate)">
而且在TextView的知名度转换似乎工作,如果生日是空:
Birthdate: Gone
但它似乎并没有绑定到能见度原型RTY:
<TextView
style="@style/TextView.ListWithIcon.SecondLine"
android:layout_below="@+id/Birthday"
local:MvxBind="Visibility Visibility(User.Birthdate)"
android:text="Whatever birthdate" />
显示 “无论生日”,而能见度(User.Birthdate)返回飘......
编辑3
如果您使用的是可见的伪财产一切正常如预期。
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="@dimen/ListIconTwoLineTileHeight"
android:paddingRight="@dimen/ListIconTwoLineTextMarginRight"
local:MvxBind="Visible User.Birthdate">
无法对此处的内容发表评论。是否还有其他错误消息或警告?你得到的是从https://github.com/MvvmCross/MvvmCross/blob/bbf9a2ac76e74d9404f4b57036c6e29dfe2cc6c3/Cirrious/Cirrious.MvvmCross.Binding/Bindings/MvxFullBinding.cs#L139,但我希望/希望更多。一些实验尝试:如果您使用INPC而不是绑定工作?如果您的属性不是Visibility(例如,如果您绑定到测试TextView中的文本),绑定是否工作?如果可以,最好编辑问题 - 在评论中回答更难以阅读... – Stuart
不幸的是,我只是上面的错误(再编辑一次)。有没有更详细的日志选项? – Roubachof
“如果您使用INPC,绑定是否工作?如果您的属性不是Visibility(例如,如果您绑定到测试TextView中的文本),绑定是否可以工作?” - 也许尝试改变一件事 - 即如果你改变你的文本视图为 '然后'local:MvxBind =“Text User.Birthdate”'那么这可能会给你一些线索 - 问题是INC,Visibilty,DateTime?还是别的什么... –
Stuart