/// <summary>
 /// Raises the <see cref="DataError"/> event.
 /// </summary>
 /// <param name="e"><see cref="DataErrorEventArgs"/> that contains the event parameters.</param>
 protected virtual void OnDataError(DataErrorEventArgs e)
 {
     if (DataError != null)
     {
         DataError(this, e);
     }
     if (!e.Handled)
     {
         throw e.Exception;
     }
 }
 /// <summary>
 ///     Raises the <see cref="DataError" /> event.
 /// </summary>
 /// <param name="e"><see cref="DataErrorEventArgs" /> that contains the event parameters.</param>
 protected virtual void OnDataError(DataErrorEventArgs e)
 {
     DataError?.Invoke(this, e);
     if (!e.Handled)
     {
         throw e.Exception;
     }
 }