我有两个视图添加和编辑视图两个视图都是不同的 UI 但相同的视图模型。通过使用 mvvm,我将绑定上下文设置为两个视图作为相同的视图模型。我是新鲜 mvvm 的新手。在新鲜的 mvvm 中,我不知道如何将相同的视图模型设置为两个视图。另一个是,我将参数传递给 viewmodel 构造函数,如何在新的 mvvm 中实现。请提出您宝贵的建议。
问问题
850 次
2 回答
2
通常,随附的视图将由名称推断。但是对于这个用例,您应该明确提及要使用的视图。有一种方法,你应该可以像这样使用它:
// For adding
CoreMethods.PushPageModel<AddEditViewModel, AddView>();
// For editing
CoreMethods.PushPageModel<AddEditViewModel, EditView>();
当然,考虑到您仍然需要为PushPageModel
方法指定的实际参数。另外,我在这里假设了您的视图模型和视图的名称,但我希望它能够理解这一点。
于 2019-04-03T08:53:20.160 回答
0
对于那些有兴趣为您在应用程序中加载的第一页(例如启动画面)执行此操作的人,这可能会有所帮助 -
Page page;
if (Xamarin.Forms.Device.Idiom == TargetIdiom.Tablet)
{
page = FreshPageModelResolver.ResolvePageModel<SplashPageModel>();
}
else
{
// We will load our phone only splash screen
page = new SplashPagePhone();
FreshPageModelResolver.BindingPageModel(null, page, new SplashPageModel(FreshIOC.Container.Resolve<DataService>()));
}
var navContainer = new FreshMvvm.FreshNavigationContainer(page)
{
BarTextColor = Color.White
};
MainPage = navContainer;
于 2019-04-19T07:25:23.473 回答