public async Task PushPageModel <T, TPopupPage>(object data = null, bool animate = true) where T : FreshBasePageModel where TPopupPage : PopupPage { var pageModel = FreshIOC.Container.Resolve <T>(); var page = FreshIOC.Container.Resolve <TPopupPage>(); FreshPageModelResolver.BindingPageModel(data, page, pageModel); await PushPageModelWithPage(page, animate); }
private async Task PushPageModel(FreshBasePageModel pageModel, object data = null, bool animate = true) { var page = FreshPageModelResolver.ResolvePageModel(data, pageModel); FreshPageModelResolver.BindingPageModel(data, page, pageModel); if (page is PopupPage) { await PushPageModelWithPage((PopupPage)page, animate); } else { throw new InvalidOperationException("Resolved page type is not PopupPage"); } }