Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ErrorLog.cs
- RoamingStoreFile.cs
- StatusBarAutomationPeer.cs
- CheckBoxBaseAdapter.cs
- XmlSchemaSequence.cs
- CatalogPartCollection.cs
- PolicyUtility.cs
- SchemaImporterExtensionElementCollection.cs
- Properties.cs
- FtpRequestCacheValidator.cs
- SqlWebEventProvider.cs
- GcSettings.cs
- HelpEvent.cs
- ConsoleKeyInfo.cs
- QueryResponse.cs
- PageScaling.cs
- ListSurrogate.cs
- SessionIDManager.cs
- ListViewSelectEventArgs.cs
- OdbcInfoMessageEvent.cs
- WindowsAuthenticationEventArgs.cs
- ItemList.cs
- MsmqReceiveParameters.cs
- DBNull.cs
- ListChangedEventArgs.cs
- ConfigurationManagerHelper.cs
- XmlBinaryWriterSession.cs
- CompilerParameters.cs
- HttpModuleActionCollection.cs
- BindableTemplateBuilder.cs
- WindowsFormsHelpers.cs
- CacheSection.cs
- FormatConvertedBitmap.cs
- HtmlTableRowCollection.cs
- CategoryNameCollection.cs
- DecoderExceptionFallback.cs
- ColorContext.cs
- ListViewInsertionMark.cs
- MarkupCompiler.cs
- HttpCacheVaryByContentEncodings.cs
- InputDevice.cs
- Control.cs
- DrawingVisualDrawingContext.cs
- WeakKeyDictionary.cs
- PeerUnsafeNativeMethods.cs
- PathGradientBrush.cs
- UIAgentCrashedException.cs
- NestedContainer.cs
- XmlAttributeHolder.cs
- ExpressionDumper.cs
- NetStream.cs
- TransactionChannelListener.cs
- ButtonField.cs
- ObjectDataSourceChooseMethodsPanel.cs
- LayeredChannelListener.cs
- ExceptionHelpers.cs
- BoundField.cs
- DataGridViewRowConverter.cs
- PersonalizationState.cs
- BaseUriWithWildcard.cs
- RegexStringValidatorAttribute.cs
- Int16.cs
- ImageField.cs
- RegexCapture.cs
- TextSelection.cs
- ApplicationException.cs
- Executor.cs
- Rotation3DKeyFrameCollection.cs
- TraceHandler.cs
- DetailsViewUpdatedEventArgs.cs
- TargetControlTypeAttribute.cs
- EditingMode.cs
- BCLDebug.cs
- DataList.cs
- Grid.cs
- MailMessage.cs
- UnsafeNativeMethods.cs
- FastEncoder.cs
- WebEvents.cs
- Track.cs
- ListViewGroupCollectionEditor.cs
- CompositeFontFamily.cs
- Activity.cs
- BitmapImage.cs
- Set.cs
- ByteStream.cs
- GlyphShapingProperties.cs
- IBuiltInEvidence.cs
- XmlSchemaType.cs
- FrameAutomationPeer.cs
- CodeObjectCreateExpression.cs
- TextElementEditingBehaviorAttribute.cs
- GrabHandleGlyph.cs
- LayoutTable.cs
- FeatureAttribute.cs
- PathFigure.cs
- XmlIterators.cs
- TypeExtensionSerializer.cs
- AnnotationResourceCollection.cs
- TagPrefixInfo.cs