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
- FrameworkTemplate.cs
- MenuItemBindingCollection.cs
- MappingModelBuildProvider.cs
- ManualWorkflowSchedulerService.cs
- BoundingRectTracker.cs
- SqlInternalConnectionSmi.cs
- MissingMethodException.cs
- StorageConditionPropertyMapping.cs
- FieldInfo.cs
- smtpconnection.cs
- BoundingRectTracker.cs
- Message.cs
- EmptyControlCollection.cs
- ComplexTypeEmitter.cs
- LogReservationCollection.cs
- PropertiesTab.cs
- NameValueConfigurationCollection.cs
- AuthenticateEventArgs.cs
- _ConnectStream.cs
- SetterBaseCollection.cs
- TextOnlyOutput.cs
- validationstate.cs
- ClientTargetCollection.cs
- storepermission.cs
- GraphicsContainer.cs
- HtmlInputCheckBox.cs
- ScriptResourceInfo.cs
- CategoryGridEntry.cs
- DbConnectionStringBuilder.cs
- BindStream.cs
- Listen.cs
- OdbcCommand.cs
- NativeMethodsCLR.cs
- QueryRelOp.cs
- Vector3DAnimationUsingKeyFrames.cs
- ClrPerspective.cs
- LocationReferenceEnvironment.cs
- CacheChildrenQuery.cs
- SizeConverter.cs
- BindingEditor.xaml.cs
- PasswordRecovery.cs
- HtmlShim.cs
- ProviderIncompatibleException.cs
- EntityDataSourceEntityTypeFilterItem.cs
- PointLight.cs
- SqlFlattener.cs
- ExpandableObjectConverter.cs
- ItemList.cs
- PTProvider.cs
- DataPagerFieldCollection.cs
- BinaryUtilClasses.cs
- MenuItemCollection.cs
- Parser.cs
- ProxyManager.cs
- TextProviderWrapper.cs
- Nullable.cs
- RegexWorker.cs
- GZipObjectSerializer.cs
- hebrewshape.cs
- ConnectionManagementElement.cs
- ObjectSpanRewriter.cs
- ContentDisposition.cs
- GACIdentityPermission.cs
- Marshal.cs
- Vector3DCollectionConverter.cs
- DeviceSpecificChoice.cs
- BindingValueChangedEventArgs.cs
- SelectionRange.cs
- WebPartEditorOkVerb.cs
- LinearGradientBrush.cs
- DispatchWrapper.cs
- EntityModelSchemaGenerator.cs
- _MultipleConnectAsync.cs
- SrgsRule.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- CacheEntry.cs
- ToolBarButtonClickEvent.cs
- SoapCodeExporter.cs
- SqlVisitor.cs
- PreviewPageInfo.cs
- WebPartVerbsEventArgs.cs
- EncoderExceptionFallback.cs
- Literal.cs
- MissingManifestResourceException.cs
- HeaderCollection.cs
- StringToken.cs
- XmlNullResolver.cs
- Track.cs
- WindowsContainer.cs
- MessageQueueInstaller.cs
- RoutedEventValueSerializer.cs
- XmlDataSource.cs
- RegistrySecurity.cs
- BuildProvidersCompiler.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- ColumnMapTranslator.cs
- DataStreamFromComStream.cs
- METAHEADER.cs
- StrokeNode.cs
- Listbox.cs