Ejemplo n.º 1
0
        public virtual void Delete()
        {
            //保存当前detail presenter 的引用
            var presenter = CurrentDetailPresenter;

            //如果要删除的presenter的实体不是新增的,那么就下delete命令,删除它
            if (!CurrentEditingObject.IsNew)
            {
                OnDelete(presenter.Entity);
            }

            //找到要删除的index
            var index = Presenters.IndexOf(presenter);
            //找到要激活的(置为当前页)的presenter
            var shouldActionPresenter = DetermineNextPresenterToActivate(index);

            //切换到要激活的presenter
            CollectionView.MoveCurrentTo(shouldActionPresenter);
            //关闭删除的presenter
            this.Shutdown(presenter);
        }