使用 MVVMCross 在 IOS Droid 中编写我的登录页面。
这就是我到目前为止所拥有的
var bindingSet = this.CreateBindingSet<LoginPageView, LoginPageViewModel>();
bindingSet.Bind(this.UsernameTextField).To(x => x.UserName).TwoWay();
bindingSet.Bind(this.UsernameTextField).For(x=>x.Enabled).To(x => !x.LoggingIn);
bindingSet.Apply();
'UserName' 的绑定成功绑定到 UsernameTextField。但是,当 LoginCommand 被触发(为简洁起见除外)时,我不想在登录例程进行时将 UI 控件设置为“Enabled = false”。
上面的代码在运行时在 x.Enabled 绑定处失败,其中
System.ArgumentException: Property expression must be of the form 'x => x.SomeProperty.SomeOtherProperty'
我一定是错误地编写了绑定,因为我希望直接绑定到“启用”属性,而不是子道具 - 但我不太明白如何做到这一点。
我查看了 mvvmcross 上的一些示例,并查看了几个 N+1 视频,但似乎找不到启用的示例匹配或其他子属性绑定。
谢谢