public static void OnViewDestroy(this IMvxWindowsView storeView, int key) { if (key > 0) { var viewModelLoader = Mvx.IoCProvider.Resolve <IMvxWindowsViewModelRequestTranslator>(); viewModelLoader.RemoveSubViewModelWithKey(key); } }
public static ValueTask OnViewCreate(this IMvxWindowsView storeView, string requestText, Func <IMvxBundle?> bundleLoader) { if (bundleLoader == null) { throw new NullReferenceException(nameof(bundleLoader)); } return(storeView.OnViewCreate(() => storeView.LoadViewModel(requestText, bundleLoader()))); }
public static void OnViewCreate(this IMvxWindowsView storeView, Func <IMvxViewModel> viewModelLoader) { if (storeView.ViewModel != null) { return; } var viewModel = viewModelLoader(); storeView.ViewModel = viewModel; }
private static IMvxViewModel LoadViewModel(this IMvxWindowsView storeView, string requestText, IMvxBundle bundle) { #warning ClearingBackStack disabled for now // if (viewModelRequest.ClearTop) // { //#warning TODO - BackStack not cleared for WinRT //phoneView.ClearBackStack(); // } var viewModelLoader = Mvx.Resolve <IMvxWindowsViewModelLoader>(); return(viewModelLoader.Load(requestText, bundle)); }
public static async ValueTask OnViewCreate(this IMvxWindowsView storeView, Func <ValueTask <IMvxViewModel> > viewModelLoader) { if (storeView == null) { throw new NullReferenceException(nameof(storeView)); } if (viewModelLoader == null) { throw new NullReferenceException(nameof(viewModelLoader)); } if (storeView.ViewModel != null) { return; } var viewModel = await viewModelLoader().ConfigureAwait(false); storeView.ViewModel = viewModel; }
public static void OnViewCreate(this IMvxWindowsView storeView, string requestText, Func <IMvxBundle> bundleLoader) { storeView.OnViewCreate(() => { return(storeView.LoadViewModel(requestText, bundleLoader())); }); }
public static void OnViewDestroy(this IMvxWindowsView storeView) { // nothing to do currently }