Xamarin MvvmCross从另一个viewModel调用命令处理程序

时间:2017-10-11 08:14:41

标签: c# xamarin xamarin.android mvvmcross

我有两种视图模型:ListItemViewModelListViewModel。我的ListViewModel包含许多ListItemViewModel个对象,当我尝试删除一个项目时,我在DeleteCommand中绑定ListItemViewModel,如下所示:

public IMvxCommand DeleteCommand => new MvxCommand(DeleteCommandHandler);

问题是DeleteCommandHandlerListViewModel中...如何从另一个视图模型中调用处理程序?

更新1

得到了问题为什么我需要这个。我的问题的原因是在处理程序中我将需要进行一个需要依赖注入的API调用,但由于automapper,我的ListItemViewModel必须有默认的空构造函数,所以我想要移动到的所有业务逻辑&# 34;父视图模型"这是ListViewModel

1 个答案:

答案 0 :(得分:0)

尝试使用消息传递服务与不同的视图模型进行通信。在您的情况下,DeleteCommandHandler会在ListItemViewModel中触发,然后会向ListViewModel发送一条消息,发送已删除项目的详细信息。

请参阅以下有关如何实施消息传递的链接 - https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/messaging-center/