将视图中的整个对象绑定到ViewModel中的对象

本文关键字:对象 绑定 ViewModel 视图 | 更新日期: 2023-09-27 18:13:15

我在我的ViewModel中有一个UserProfile对象,它包含许多字段/属性,如名字,中间名,姓氏等。我正在为iOS编程,所以我使用流畅绑定。我已经能够找出如何将视图中对象的各个属性链接到ViewModel,即:

set.Bind(this._Profile).For(v => v.FirstName).To(vm => vm.UserProfile.FirstName);

这工作得很好,但我希望能够绑定整个对象(这样我就不必单独绑定所有字段)。我在网上搜索过,但没有找到。我试着:

set.Bind(this._Profile).For(v => v).To(vm => vm.UserProfile);

,但这不起作用。我相信答案很简单,但是我一直没有想出来。

将视图中的整个对象绑定到ViewModel中的对象

如果你的视图有一个公共的Profile属性:

   private User _profile ;
   public User Profile 
   {
       get { return _profile; } 
       set { 
          _profile = value; 
          // do UI updates here
       } 
   }

然后你可以使用:

   set.Bind(this).For(v => v.Profile).To(vm => vm.UserProfile);