internal static void ViewModelRequestForSegue(this IMvxEventSourceViewController self, UIStoryboardSegue segue, NSObject sender) { var view = self as IMvxIosViewSegue; var parameterValues = view == null ? null : view.PrepareViewModelParametersForSegue(segue, sender); if (parameterValues is IMvxBundle) { self.ViewModelRequestForSegueImpl(segue, (IMvxBundle)parameterValues); } else if (parameterValues is IDictionary <string, string> ) { self.ViewModelRequestForSegueImpl(segue, (IDictionary <string, string>)parameterValues); } else { self.ViewModelRequestForSegueImpl(segue, parameterValues); } }
internal static void ViewModelRequestForSegue(this IMvxEventSourceViewController self, UIStoryboardSegue segue, NSObject sender) { object?parameterValues = null; if (self is IMvxIosViewSegue segueView) { parameterValues = segueView.PrepareViewModelParametersForSegue(segue, sender); } if (parameterValues is IMvxBundle bundleValues) { self.ViewModelRequestForSegueImpl(segue, bundleValues); } else if (parameterValues is IDictionary <string, string> dictValues) { self.ViewModelRequestForSegueImpl(segue, dictValues); } else { self.ViewModelRequestForSegueImpl(segue, parameterValues); } }
private static void ViewModelRequestForSegueImpl(this IMvxEventSourceViewController self, UIStoryboardSegue segue, IDictionary <string, string> parameterValues) { self.ViewModelRequestForSegueImpl(segue, new MvxBundle(parameterValues)); }
private static void ViewModelRequestForSegueImpl(this IMvxEventSourceViewController self, UIStoryboardSegue segue, object parameterValuesObject) { self.ViewModelRequestForSegueImpl(segue, parameterValuesObject.ToSimplePropertyDictionary()); }