来自ViewModel的模态

本文关键字:模态 ViewModel 来自 | 更新日期: 2023-09-27 18:15:44

我试图找出在ViewModels中使用模态的最佳方法是什么

现在我可以看到这些方法

  1. 在模式
  2. 中输入/选择数据时,触发App.Xaml.cs中的事件
  3. ViewModel的虚拟BindingContext集,用于设置数据
  4. BindingContext与动作设置数据在另一个ViewModel。
  5. Code-behind在模态页面,我必须设置一个属性的数据

目前,我认为方法1或3是最好的,因为它们最容易测试。

但是我错了吗?
还是有其他方法?

来自ViewModel的模态

看看https://developer.xamarin.com/guides/xamarin-forms/user-interface/navigation/modal/#Passing_Data_when_Navigating。这里详细介绍了两种方法:

  • 通过模态页面的构造函数传递数据。
  • 通过绑定上下文传递数据。

当然,这一切都取决于您想要实现的细微细节,但是如果您只需要将数据传递到新VM,那么通过构造函数传递数据是非常好的。如果您正在填写表单,那么绑定上下文将起作用。

我还建议您看看Prism for Xamarin Forms。它使传递参数变得非常简单。https://github.com/PrismLibrary/Prism/blob/master/docs/Xamarin-Forms/3-Navigation-Service.md传递参数