mvvmcross.plugin.fieldbinding插件是MVVMCross的RIO绑定扩展的一部分,旨在通过允许将字段用作属性的数据源来增强数据绑定功能。这是此插件的主要功能:
1。基于字段的数据绑定:传统上,MVVMCross数据绑定依赖于属性。但是,使用FieldBinding插件,您可以将ViewModel中的公共字段用作数据绑定的来源。当您想直接与字段结合而无需属性时,这种灵活性特别有用[1] [4]。
2。对字段的InotifyChanged支持:该插件支持用于动态字段的“ InotifyChanged”的使用。这意味着字段可以通知UI有关更改的通知,类似于属性与'InotifyPropertychanged”的方式。这是通过使用``Inc''(通知更改)的类来实现的,该类可用于创建可观察的字段[1]。
3。兼容性和平台支持:现场插件是一个纯标准插件,使其在MVVMCross支持的各种平台上兼容,包括Xamarin IOS,Xamarin Android,Xamarin Android,Xamarin Forms,Windows和Mac [1] [1] [7]。
4。与其他插件集成:可以与其他MVVMCROSS插件一起使用fieldBinding插件,例如mvvmcross.plugin.all软件包,其中包括所有MVVMCross插件和MVVMCROSS.plugins.plugins.validation.validation.validation.fieldbinding.forfieldbinding,fieldbinding,提供对现场绑定的验证支持[7]。
5。在ViewModels中使用:在ViewModels中,您可以使用``Inc''等类定义字段,并将其直接绑定到UI元素。例如,您可以使用MVVMCROSS绑定语法[1]创建诸如`public Readonly Inc id = new NC()的字段;
6。绑定语法:插件支持各种结合语法,包括基于XML的iOS平台的基于XML的绑定和流利的绑定。例如,您可以使用XML在Android中绑定“ TextView”,例如local:mvxBind ='text firstName'' [1] [4]。
总体而言,mvvmcross.plugin.fieldbinding插件通过允许使用字段来简化某些方案并提高代码可读性,从而为数据绑定提供了更灵活的方法。
引用:[1] https://www.mvvmcross.com/documentation/plugins/fieldbinding
[2] https://www.mvvmcross.com/documentation/advanced/customizing-usif-sud-sapp-anp-setup
[3] https://www.mvvmcross.com/mvvmcross-5-release/
[4] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[5] https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle
[6] https://github.com/mvvmcross/mvvmcross/issues/2607
[7] https://www.nuget.org/packages/mvvmcross.plugin.fieldbinding/
[8] https://www.mvvmcross.com/documentation/fundamentals/logging-new