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
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataContractSerializerSection.cs
- CodeArrayCreateExpression.cs
- DataGridViewTopRowAccessibleObject.cs
- CorrelationQueryBehavior.cs
- ModelPropertyImpl.cs
- DashStyle.cs
- CollectionExtensions.cs
- DataSourceXmlClassAttribute.cs
- TypeListConverter.cs
- VisualStyleElement.cs
- ToolStripDropDownButton.cs
- InstanceDescriptor.cs
- SchemaImporterExtensionElement.cs
- ValueType.cs
- StaticContext.cs
- UnmanagedMemoryStreamWrapper.cs
- XPathParser.cs
- SectionUpdates.cs
- UniqueIdentifierService.cs
- MetaModel.cs
- TabControlToolboxItem.cs
- ConsoleTraceListener.cs
- DurationConverter.cs
- CodeValidator.cs
- TransformPatternIdentifiers.cs
- PeerTransportElement.cs
- MenuItemStyle.cs
- ClientFormsIdentity.cs
- WasNotInstalledException.cs
- Missing.cs
- XsdDataContractExporter.cs
- LocationReferenceEnvironment.cs
- SqlDataReaderSmi.cs
- DataGridViewBand.cs
- ChangeDirector.cs
- GifBitmapDecoder.cs
- NodeLabelEditEvent.cs
- MultiplexingFormatMapping.cs
- OdbcConnectionOpen.cs
- CommandConverter.cs
- ParserExtension.cs
- oledbmetadatacollectionnames.cs
- LayoutSettings.cs
- AtomServiceDocumentSerializer.cs
- RtfControls.cs
- HttpCacheParams.cs
- ScalarConstant.cs
- StylusEventArgs.cs
- EndOfStreamException.cs
- MasterPageBuildProvider.cs
- MarkupCompiler.cs
- _IPv4Address.cs
- ExceptionHelpers.cs
- TextEditorContextMenu.cs
- RankException.cs
- FunctionImportElement.cs
- Int16Storage.cs
- StylusDevice.cs
- DataObjectCopyingEventArgs.cs
- VisualStateChangedEventArgs.cs
- WpfMemberInvoker.cs
- PeerApplicationLaunchInfo.cs
- PlaceHolder.cs
- DockPatternIdentifiers.cs
- UnauthorizedWebPart.cs
- ListViewSelectEventArgs.cs
- DataGridViewCellEventArgs.cs
- ActionMismatchAddressingException.cs
- UnsafeNetInfoNativeMethods.cs
- AnnotationComponentManager.cs
- LayoutTable.cs
- TabletDeviceInfo.cs
- SchemaAttDef.cs
- DataPointer.cs
- KeyEventArgs.cs
- SafeNativeMethodsCLR.cs
- ExtenderControl.cs
- TypeGeneratedEventArgs.cs
- VirtualPathProvider.cs
- MultiAsyncResult.cs
- ObjectStateFormatter.cs
- ClientRuntimeConfig.cs
- DbProviderFactories.cs
- ipaddressinformationcollection.cs
- AudioException.cs
- DataGridViewMethods.cs
- ApplicationActivator.cs
- DisplayNameAttribute.cs
- ExpressionVisitorHelpers.cs
- WebEventCodes.cs
- DocumentSignatureManager.cs
- ToolStripItemCollection.cs
- List.cs
- PrivateFontCollection.cs
- XmlNode.cs
- DiagnosticStrings.cs
- GuidelineSet.cs
- TreeNodeCollection.cs
- FactoryMaker.cs
- LocalizableAttribute.cs