public BatchChange(ObservableBatchCollection <T> source)
            {
                if (source.batch != null)
                {
                    throw new InvalidOperationException("Cannot start a batch before the current batch is finished.");
                }

                this.source  = source;
                source.batch = this;
            }
 private ErrorCollection(ObservableBatchCollection <ValidationError> errors)
     : base(errors)
 {
     this.errors = errors;
 }