Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon MVVMCross中一次性数据绑定的常见用例是什么


MVVMCross中一次性数据绑定的常见用例是什么


在MVVMCROSS中,一次性数据绑定是一种模式,即仅在建立绑定时仅将数据从视图模型传输到视图一次。在此初始传输之后,绑定将不会监视更改,并且除非重置绑定源本身,否则不会执行任何更新。以下是一些用于一次性数据约束的常见用例:

1。语言文件中的静态文本:从语言文件设置静态文本时,一次性绑定特别有用。选择该语言后,用户不常见的更改,因此无需连续更新。这种方法有助于维持干净有效的绑定设置,因为它避免了不必要发生不可能发生的更改的不必要检查[2]。

2。可配置但很少变化的数据:对于可配置但最初设置后不经常更改的字段,一次性绑定可能是有益的。这包括在初始化期间设置的设置或数据,并在整个应用程序的运行时保持恒定。

3.性能优化:虽然使用单向绑定通常没有性能惩罚,但一次性绑定可以通过消除与变更检测相关的任何潜在开销来进一步优化性能。这在已知数据静态并且不需要更新的情况下可能特别相关。

4。减少不必要的更新:如果数据大多是静态并且只需要一次显示一次,则使用一次性绑定可以防止不必要的更新。这可以有助于减少与经常检查更改相关的计算开销,尤其是在复杂或数据密集型应用程序中。

5。简化条件逻辑:通过对静态数据进行一次性绑定,开发人员可以简化与屏幕布局或数据表示相关的条件逻辑。这有助于通过将动态数据处理与静态数据显示分开来维护清洁代码库。

总而言之,MVVMCross中的一次性数据绑定是数据是静态或很少更改的场景的理想之选,从而可以有效且直截了当的数据表示,而无需连续更改监视的开销。

引用:
[1] https://blog.ostebaronen.dk/2018/01/mvvmcross-binding-target.html
[2] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[3] https://www.reddit.com/r/androiddev/comments/ux9379/what_are_the_the_ce_cases_of_data_binding_anding_and_and_when/
[4] https://www.mvvmcross.com/documentation/advanced/custom-data-binding
[5] https://stackoverflow.com/questions/48910503/binding-mode-onetime-intime-intime-in-mvxrecyclerview
[6] http://stackoverflow.com/questions/10700445/in-mvvmcross-how-do-i-i-do-custom.-bind-properties
[7] https://stackoverflow.com/questions/25460030/when-to-use-muse-mvvmcross-data-bindings
[8] https://github.com/mvvmcross/mvvmcross/issues/421
[9] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/windows-phote-phote-build-mvvm-mvvm-apps-with-xamarin-and-mvvmcross