/// <summary> /// Registers a view model to keep in memory. /// </summary> /// <param name="viewModel">The view model to register.</param> internal void RegisterViewModel(IAccountDataViewModel viewModel) { Arguments.NotNull(viewModel, nameof(viewModel)); viewModel.IsEditing = IsEditing; _viewModels.Add(viewModel); OnViewModelListChanged?.Invoke(this, EventArgs.Empty); }
/// <summary> /// Unregisters the specific view model. /// </summary> /// <param name="viewModel">The view model to unregister.</param> internal void UnregisterViewModel(IAccountDataViewModel viewModel) { Arguments.NotNull(viewModel, nameof(viewModel)); _viewModels.Remove(viewModel); viewModel.UnloadingAsync().ForgetSafely(); OnViewModelListChanged?.Invoke(this, EventArgs.Empty); }