Caliburn Micro将非通用参数传递给新的ViewModel

本文关键字:ViewModel 参数传递 Micro Caliburn | 更新日期: 2023-09-27 18:15:21

Caliburn Micro pass非通用参数到Windows Store应用程序中的新ViewModel

我从一个页面导航到另一个页面,并想把我自己的类实例像参数传递给ViewModel。

我需要这样的东西,只有替换字符串到自己的类实例。

在FirstViewModel:

   NavigationService.NavigateToViewModel<SecondViewModel>("Hello");
在SecondViewModel:

    public string Parameter { get; set; }
    public ProjectPageViewModel(INavigationService navigationService)
    {
        _navigationService = navigationService;
    }

与字符串都工作得很好。
可以传递自己类的实例吗?

Caliburn Micro将非通用参数传递给新的ViewModel

在Windows Phone中,你不能在导航中传递复杂的对象。现在你可以把它当作一个基本约束。

相反,如果你愿意,你可以使用EventAggregator来传递消息。顺便说一下,EventAggregator模式通常用于MVVM中的类似任务。