小编Att*_*rik的帖子

在MVVMCross中将对象传递给"导航到"viewmodel的最佳方法是什么?

我有一个ViewModel,它包含一个Team,它有一个Players属性,它是一个Player对象列表.在TeamView中,Team是深度加载的,因此播放器数据已经在内存中.

将给定的选定Player类实例传递给PlayerView的最佳方法是什么?

问题是MVVMCross ViewModel构造函数只能包含当前版本的字符串属性.

我有以下想法:

  1. 传递所选Player的Id并将Team.Players属性作为ViewModel分配给PlayerView.如果所选择的玩家只是PlayerView中的焦点玩家并且PlayerView实际上是"玩家"视图,那么这可以是合理的解决方案,其中用户也可以在其他团队玩家之间滑动.

  2. 有一个像ViewBag服务这样的ASP.Net MVC只能在导航动作之间传递数据,在类似存储的字典中,传递给PlayerView的参数是一个"viewbag:PlayerId123",它是一个指向类实例的特殊键.

  3. 将所选对象序列化为字符串,并将其作为序列化对象传递给构造函数.这是可能的,但我不喜欢这个解决方案.

c# xamarin.ios windows-phone-7 xamarin.android mvvmcross

12
推荐指数
1
解决办法
3607
查看次数