我从另一个开发者那里继承了一个Xamarin MVVMCross项目。我想知道如何获得使用的默认绑定模式以及如何更改它。
答案 0 :(得分:1)
在MvvmCross中,当使用由MvvmCross(虚拟属性绑定/自定义绑定)定义的绑定时,默认binding mode通常为Two-Way
。本机属性通常为One-Way
,因为默认情况下没有返回机制(View to ViewModel)。
来自MvvmCross Custom binding的备注:
MvvmCross创建了新的绑定,然后这个[双向绑定]经常是 默认绑定模式MvvmCross尝试使用。
除了Windows和Xaml:
在Windows / Xaml中,这种[单向绑定]通常是默认的绑定模式 - 所以它 是没有选择其他模式时使用的模式。
, Mode=$WhichMode$
$WhichMode$
之一是:
使用Android AXML的示例
local:MvxBind="Text UserName, Mode=OneWay"
使用代码库绑定,您可以使用:
OneWay()
TwoWay()
OneWayToSource()
OneTime()
示例:
var set = this.CreateBindingSet<MyView, MyViewModel>();
set.Bind(cardLabel)
.For(v => v.Text)
.To(vm => vm.UserName)
.OneWay();
set.Apply();