Esempio n. 1
0
        public void BeginEdit()
        {
            ITrackEntityState _this = this as ITrackEntityState;

            if (_this.EntityState == EntityState.Unchanged)
            {
                return;
            }
            _this.EntityState = EntityState.ToBeUpdated;
        }
Esempio n. 2
0
        public void EndEdit()
        {
            ITrackEntityState _this = this as ITrackEntityState;

            if (_this.EntityState == EntityState.Unchanged)
            {
                return;
            }
            _this.EntityState = EntityState.Unchanged;
            ((ITrackOriginalValues)this).OriginalValues.Clear();
        }
Esempio n. 3
0
        public void CancelEdit()
        {
            ITrackEntityState _this = this as ITrackEntityState;

            if (_this.EntityState == EntityState.Unchanged || _this.EntityState != EntityState.ToBeUpdated)
            {
                return;
            }
            RevertChanges();
            _this.EntityState = EntityState.Unchanged;
        }
        private void PropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            m_Unchaged = false;
            ITrackEntityState _entity = sender as ITrackEntityState;

            if (_entity == null)
            {
                throw new ArgumentNullException("sender", "PropertyChanged must be called from ITrackEntityState");
            }
            switch (_entity.EntityState)
            {
            case EntityState.Unchanged:
                _entity.EntityState = EntityState.ToBeUpdated;
                break;

            case EntityState.ToBeInserted:
            case EntityState.ToBeUpdated:
            case EntityState.ToBeRecycled:
            case EntityState.ToBeDeleted:
            case EntityState.Deleted:
                break;
            }
        }