/// <summary> /// Ends scalar editing mode. /// </summary> /// <returns><see langword="true"/> if scalar editing mode ended successfully, otherwise <see langword="false"/>.</returns> public bool EndEdit() { if (!IsEditing) { throw new InvalidOperationException(DiagnosticMessages._VerifyIsEditing); } if (Count == 0) { IsEditing = false; return(true); } if (!_owner.QueryEndEdit()) { return(false); } _owner.SuspendInvalidateView(); SuspendValueChangedNotification(); for (int i = 0; i < Count; i++) { this[i].EndEdit(); } IsEditing = false; _owner.OnEndEdit(); ResumeValueChangedNotification(); _owner.ResumeInvalidateView(); return(true); }