Catel.MVVM.ManagedViewModel.RemoveInterestedViewModel C# (CSharp) Метод

RemoveInterestedViewModel() публичный Метод

Removes a view model from the list of interested view models for this view model type.
The is null.
public RemoveInterestedViewModel ( IViewModel viewModel ) : void
viewModel IViewModel The view model instance that is interested in changes.
Результат void
        public void RemoveInterestedViewModel(IViewModel viewModel)
        {
            Argument.IsNotNull("viewModel", viewModel);

            lock (_lock)
            {
                viewModel.ClosedAsync -= OnInterestedViewModelClosedAsync;

                var vmId = viewModel.UniqueIdentifier;
                if (_interestedViewModels.ContainsKey(vmId))
                {
                    _interestedViewModels.Remove(vmId);

                    Log.Debug("Removed interested view model of type '{0}' for type '{1}', currently containing {2} interested view model(s)",
                              viewModel.GetType(), ViewModelType, _interestedViewModels.Count);
                }
            }
        }

Usage Example

Пример #1
0
        public void RemoveInterestedViewModel_Null()
        {
            ViewModelManager.ClearAll();

            var viewModel = new ManagedViewModel(typeof (InterestingViewModel));

            ExceptionTester.CallMethodAndExpectException<ArgumentNullException>(() => viewModel.RemoveInterestedViewModel(null));
        }