Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Controls / ValidationResult.cs / 1305600 / ValidationResult.cs
//---------------------------------------------------------------------------- // //// Copyright (C) 2003 by Microsoft Corporation. All rights reserved. // // // // Description: // A ValidationResult is the result of call to ValidationRule.Validate // // See specs at http://avalon/connecteddata/M5%20Specs/Validation.mht // // History: // 5/3/2004 mharper: created. // //--------------------------------------------------------------------------- using System; namespace System.Windows.Controls { ////// A ValidationResult is the result of call to ValidationRule.Validate /// public class ValidationResult { ////// Constructor /// public ValidationResult(bool isValid, object errorContent) { _isValid = isValid; _errorContent = errorContent; } ////// Whether or not the ValidationRule that was checked is valid. /// public bool IsValid { get { return _isValid; } } ////// Additional information regarding the cause of the invalid /// state of the binding that was just checked. /// public object ErrorContent { get { return _errorContent; } } ////// Returns a valid ValidationResult /// public static ValidationResult ValidResult { get { return s_valid; } } ////// Compares the parameters for value equality /// /// left operand /// right operand ///true if the values are equal public static bool operator == (ValidationResult left, ValidationResult right) { return Object.Equals(left, right); } ////// Compares the parameters for value inequality /// /// left operand /// right operand ///true if the values are not equal public static bool operator != (ValidationResult left, ValidationResult right) { return !Object.Equals(left, right); } ////// By-value comparison of ValidationResult /// ////// This method is also used indirectly from the operator overrides. /// /// ValidationResult to be compared against this ValidationRule ///true if obj is ValidationResult and has the same values public override bool Equals(object obj) { // A cheaper alternative to Object.ReferenceEquals() is used here for better perf if (obj == (object)this) { return true; } else { ValidationResult vr = obj as ValidationResult; if (vr != null) { return (IsValid == vr.IsValid) && (ErrorContent == vr.ErrorContent); } } return false; } ////// Hash function for ValidationResult /// ///hash code for the current ValidationResult public override int GetHashCode() { return IsValid.GetHashCode() ^ ((ErrorContent == null) ? int.MinValue : ErrorContent).GetHashCode(); } private bool _isValid; private object _errorContent; private static readonly ValidationResult s_valid = new ValidationResult(true, null); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // //// Copyright (C) 2003 by Microsoft Corporation. All rights reserved. // // // // Description: // A ValidationResult is the result of call to ValidationRule.Validate // // See specs at http://avalon/connecteddata/M5%20Specs/Validation.mht // // History: // 5/3/2004 mharper: created. // //--------------------------------------------------------------------------- using System; namespace System.Windows.Controls { ////// A ValidationResult is the result of call to ValidationRule.Validate /// public class ValidationResult { ////// Constructor /// public ValidationResult(bool isValid, object errorContent) { _isValid = isValid; _errorContent = errorContent; } ////// Whether or not the ValidationRule that was checked is valid. /// public bool IsValid { get { return _isValid; } } ////// Additional information regarding the cause of the invalid /// state of the binding that was just checked. /// public object ErrorContent { get { return _errorContent; } } ////// Returns a valid ValidationResult /// public static ValidationResult ValidResult { get { return s_valid; } } ////// Compares the parameters for value equality /// /// left operand /// right operand ///true if the values are equal public static bool operator == (ValidationResult left, ValidationResult right) { return Object.Equals(left, right); } ////// Compares the parameters for value inequality /// /// left operand /// right operand ///true if the values are not equal public static bool operator != (ValidationResult left, ValidationResult right) { return !Object.Equals(left, right); } ////// By-value comparison of ValidationResult /// ////// This method is also used indirectly from the operator overrides. /// /// ValidationResult to be compared against this ValidationRule ///true if obj is ValidationResult and has the same values public override bool Equals(object obj) { // A cheaper alternative to Object.ReferenceEquals() is used here for better perf if (obj == (object)this) { return true; } else { ValidationResult vr = obj as ValidationResult; if (vr != null) { return (IsValid == vr.IsValid) && (ErrorContent == vr.ErrorContent); } } return false; } ////// Hash function for ValidationResult /// ///hash code for the current ValidationResult public override int GetHashCode() { return IsValid.GetHashCode() ^ ((ErrorContent == null) ? int.MinValue : ErrorContent).GetHashCode(); } private bool _isValid; private object _errorContent; private static readonly ValidationResult s_valid = new ValidationResult(true, null); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DescendantQuery.cs
- CodeRegionDirective.cs
- HelpProvider.cs
- PropertyOverridesDialog.cs
- TypeReference.cs
- Guid.cs
- _NegoStream.cs
- FlowDocumentPage.cs
- SoapEnvelopeProcessingElement.cs
- ProcessDesigner.cs
- TextInfo.cs
- LayoutInformation.cs
- ProxyOperationRuntime.cs
- NativeMethods.cs
- PowerModeChangedEventArgs.cs
- DataGridViewCheckBoxCell.cs
- PathParser.cs
- MsmqInputMessage.cs
- pingexception.cs
- safelinkcollection.cs
- PropertyValueUIItem.cs
- Error.cs
- PathNode.cs
- OrderPreservingMergeHelper.cs
- ControlOperationBehavior.cs
- DictionarySectionHandler.cs
- ListViewTableRow.cs
- ObjectHandle.cs
- formatter.cs
- PriorityChain.cs
- KeyTimeConverter.cs
- CheckBoxField.cs
- BamlResourceDeserializer.cs
- EventTask.cs
- FormViewPagerRow.cs
- HTTPNotFoundHandler.cs
- WebControlsSection.cs
- DataGridViewBand.cs
- WmlMobileTextWriter.cs
- ManagementObjectSearcher.cs
- UpdateExpressionVisitor.cs
- StylusButtonEventArgs.cs
- Single.cs
- FullTextLine.cs
- _Semaphore.cs
- XPathNodeInfoAtom.cs
- DbQueryCommandTree.cs
- GridView.cs
- SharedStatics.cs
- PermissionSetEnumerator.cs
- ResourcesBuildProvider.cs
- DateBoldEvent.cs
- BuildProvider.cs
- ByteRangeDownloader.cs
- MetadataWorkspace.cs
- EntityConnectionStringBuilder.cs
- InstanceCollisionException.cs
- SafeRightsManagementPubHandle.cs
- ConstantCheck.cs
- ColorDialog.cs
- ContentType.cs
- ThumbButtonInfoCollection.cs
- ConstantSlot.cs
- SqlTriggerContext.cs
- NavigateEvent.cs
- PassportAuthenticationModule.cs
- XmlUtil.cs
- HMACSHA512.cs
- AssemblyUtil.cs
- BaseCollection.cs
- Int32Collection.cs
- InlineObject.cs
- PropertyStore.cs
- PathSegmentCollection.cs
- SafeCryptHandles.cs
- SerialPinChanges.cs
- XPathNodePointer.cs
- SQLCharsStorage.cs
- DataListItemCollection.cs
- ValueChangedEventManager.cs
- DataObjectEventArgs.cs
- ByteStorage.cs
- TagPrefixCollection.cs
- Part.cs
- KeyTime.cs
- SafeLibraryHandle.cs
- XmlKeywords.cs
- XPathSingletonIterator.cs
- AppDomainGrammarProxy.cs
- StackOverflowException.cs
- AsyncPostBackTrigger.cs
- FlowDocumentPageViewerAutomationPeer.cs
- HostedHttpRequestAsyncResult.cs
- BaseCodeDomTreeGenerator.cs
- TemplateManager.cs
- GridEntry.cs
- OperationInvokerBehavior.cs
- ObjectKeyFrameCollection.cs
- _ListenerAsyncResult.cs
- ScrollItemPattern.cs