代码之家  ›  专栏  ›  技术社区  ›  Dmitry Zinoviev

导航到新ViewModel时,MvxBundle为空

  •  0
  • Dmitry Zinoviev  · 技术社区  · 8 年前

    IMvxNavigationService

    现在我试着把一个MvxBundle传递给 MainViewModel 下一个电话

    NavigationService.Navigate<MainViewModel>(new MvxBundle(new Dictionary<string, string>()
    {
        {"key1","value1" },
        {"key2","value2" },
    }));
    

    在 主视图模型 我重写 InitFromBundle

    protected override void InitFromBundle(IMvxBundle parameters)
    {
        base.InitFromBundle(parameters);
    }
    

    但是 parameters 是空的。 parameters.Data 不包含我的 Dictionary .

    我做错什么了吗?

    1 回复  |  直到 8 年前
        1
  •  1
  •   Nazar    8 年前

    导航用

    NavigationService.Navigate<ViewModel, Parameter type>(parapeter)
    

    await NavigationService.Navigate<MainViewModel, Dictionary<String, String>>(new Dictionary<String, String> {{"", ""}});
    

    在其上导航的ViewModel必须继承 MvxViewModel<MyObject> 和覆盖 Prepare 方法

    public class MainViewModel
    {
        public override void Prepare(Dictionary<String, String> parameter)
        {
    
        }
    }
    
    推荐文章