/// <summary>
        /// Raises the <see cref="ColumnChanged" /> event.
        /// </summary>
        /// <param name="column">The <see cref="EvlBehaviordescriptionColumn"/> which has raised the event.</param>
        /// <param name="value">The changed value.</param>
        public virtual void OnColumnChanged(EvlBehaviordescriptionColumn column, object value)
        {
            if (!SuppressEntityEvents)
            {
                EvlBehaviordescriptionEventHandler handler = ColumnChanged;
                if (handler != null)
                {
                    handler(this, new EvlBehaviordescriptionEventArgs(column, value));
                }

                // warn the parent list that i have changed
                OnEntityChanged();
            }
        }
        /// <summary>
        /// Raises the <see cref="ColumnChanging" /> event.
        /// </summary>
        /// <param name="column">The <see cref="EvlBehaviordescriptionColumn"/> which has raised the event.</param>
        /// <param name="value">The changed value.</param>
        public virtual void OnColumnChanging(EvlBehaviordescriptionColumn column, object value)
        {
            if (IsEntityTracked && EntityState != EntityState.Added && !EntityManager.TrackChangedEntities)
            {
                EntityManager.StopTracking(entityTrackingKey);
            }

            if (!SuppressEntityEvents)
            {
                EvlBehaviordescriptionEventHandler handler = ColumnChanging;
                if (handler != null)
                {
                    handler(this, new EvlBehaviordescriptionEventArgs(column, value));
                }
            }
        }
        /// <summary>
        /// Determines whether the property value has changed from the original data.
        /// </summary>
        /// <param name="column">The column.</param>
        /// <returns>
        ///     <c>true</c> if the property value has changed; otherwise, <c>false</c>.
        /// </returns>
        public bool IsPropertyChanged(EvlBehaviordescriptionColumn column)
        {
            switch (column)
            {
            case EvlBehaviordescriptionColumn.Id:
                return(entityData.Id != _originalData.Id);

            case EvlBehaviordescriptionColumn.BehaviorId:
                return(entityData.BehaviorId != _originalData.BehaviorId);

            case EvlBehaviordescriptionColumn.Score:
                return(entityData.Score != _originalData.Score);

            case EvlBehaviordescriptionColumn.Dept:
                return(entityData.Dept != _originalData.Dept);

            default:
                return(false);
            }
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="T:EvlBehaviordescriptionComparer"/> class.
 /// </summary>
 /// <param name="column">The column to sort on.</param>
 public EvlBehaviordescriptionComparer(EvlBehaviordescriptionColumn column)
 {
     this.whichComparison = column;
 }
 ///<summary>
 /// Initalizes a new Instance of the EvlBehaviordescriptionEventArgs class.
 ///</summary>
 public EvlBehaviordescriptionEventArgs(EvlBehaviordescriptionColumn column, object value)
 {
     this.column = column;
     this.value  = value;
 }
 ///<summary>
 /// Initalizes a new Instance of the EvlBehaviordescriptionEventArgs class.
 ///</summary>
 public EvlBehaviordescriptionEventArgs(EvlBehaviordescriptionColumn column)
 {
     this.column = column;
 }
 /// <summary>
 /// Raises the <see cref="ColumnChanged" /> event.
 /// </summary>
 /// <param name="column">The <see cref="EvlBehaviordescriptionColumn"/> which has raised the event.</param>
 public virtual void OnColumnChanged(EvlBehaviordescriptionColumn column)
 {
     OnColumnChanged(column, null);
     return;
 }