/// <summary> /// Отвязаться от модели. /// </summary> public void UnsubscriveModel() { if (_model == null) { return; } _model.DestroyEvent -= Model_OnDestroyEvent; _model.DropEvent -= Model_OnDropEvent; _model.SwapEvent -= Model_OnSwapEvent; MovementFinishEvent -= _model.MovementFinish; _model = null; }
/// <summary> /// Привязаться к модели. /// </summary> /// <param name="model">Модель элемента</param> public void SubscribeModel(IElementModelView model) { if (model == null) { throw new ArgumentNullException("model"); } UnsubscriveModel(); _model = model; _model.DestroyEvent += Model_OnDestroyEvent; _model.DropEvent += Model_OnDropEvent; _model.SwapEvent += Model_OnSwapEvent; MovementFinishEvent += _model.MovementFinish; }