Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / MS / Internal / Controls / ValidationErrorCollection.cs / 1 / ValidationErrorCollection.cs
//---------------------------------------------------------------------------- // //// Copyright (C) 2003 by Microsoft Corporation. All rights reserved. // // // // Description: // ValidationErrorCollection contains the list of ValidationErrors from // the various Bindings and MultiBindings on an Element. ValidationErrorCollection // be set through the Validation.ErrorsProperty. // // See specs at [....]/connecteddata/Specs/Validation.mht // // History: // 5/3/2004 [....]: created. // //--------------------------------------------------------------------------- using System; using System.ComponentModel; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Windows; using System.Windows.Controls; using System.Windows.Data; namespace MS.Internal.Controls { ////// ValidationErrorCollection contains the list of ValidationErrors from /// the various Bindings and MultiBindings on an Element. ValidationErrorCollection /// be set through the Validation.ErrorsProperty. /// internal class ValidationErrorCollection : ObservableCollection{ /// /// Empty collection that serves as a default value for /// Validation.ErrorsProperty. /// public static readonly ReadOnlyObservableCollectionEmpty = new ReadOnlyObservableCollection (new ValidationErrorCollection()); /// /// called by base class Collection<T> when an item is added to list; /// protected override void InsertItem(int index, ValidationError item) { int existingIndex = FindErrorForBinding(item.BindingInError); // if there is already a ValidationError for this binding, // then throw if (existingIndex > -1) { throw new ArgumentException(SR.Get(SRID.DuplicatesNotAllowed), "validationError"); } base.InsertItem(index, item); } //----------------------------------------------------- // // Internal Methods // //----------------------------------------------------- #region Internal Methods static internal ReadOnlyObservableCollectionGetReadOnlyErrors(DependencyObject d) { ValidationErrorCollection errors = Validation.GetErrorsInternal(d); if (errors != null) { if (errors._readonlyWrapper == null) { errors._readonlyWrapper = new ReadOnlyObservableCollection (errors); } return errors._readonlyWrapper; } else { return Empty; } } #endregion Internal Methods //------------------------------------------------------ // // Private Methods // //----------------------------------------------------- #region Private Methods private int FindErrorForBinding(object binding) { for (int i = 0; i < this.Count; i++) { if (this[i].BindingInError == binding) { return i; } } return -1; } #endregion Private Methods ReadOnlyObservableCollection _readonlyWrapper; } } // 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
- UpdatePanelTrigger.cs
- EventlogProvider.cs
- ConcurrencyMode.cs
- EntityDataSourceSelectingEventArgs.cs
- TextBoxAutoCompleteSourceConverter.cs
- RowSpanVector.cs
- DocumentApplication.cs
- MediaSystem.cs
- CounterCreationData.cs
- GradientBrush.cs
- EntityContainer.cs
- DbDataAdapter.cs
- StringAttributeCollection.cs
- WebPartsPersonalization.cs
- Schema.cs
- OperationAbortedException.cs
- HtmlTable.cs
- SaveWorkflowAsyncResult.cs
- XmlLanguage.cs
- SizeAnimationClockResource.cs
- MetadataWorkspace.cs
- AnnotationComponentManager.cs
- UnsafeNativeMethodsTablet.cs
- dbenumerator.cs
- HyperLinkDesigner.cs
- ManipulationLogic.cs
- XsltQilFactory.cs
- TextReader.cs
- milexports.cs
- formatter.cs
- PerspectiveCamera.cs
- PostBackTrigger.cs
- ItemDragEvent.cs
- SqlUdtInfo.cs
- GridViewDeletedEventArgs.cs
- IndependentAnimationStorage.cs
- JsonReaderDelegator.cs
- Queue.cs
- LambdaCompiler.Binary.cs
- BindingGroup.cs
- IpcServerChannel.cs
- InvocationExpression.cs
- MessageQueuePermission.cs
- XmlAttributes.cs
- PerfService.cs
- WsdlInspector.cs
- UnsafeNativeMethods.cs
- ListViewDeleteEventArgs.cs
- NotifyCollectionChangedEventArgs.cs
- ObjectTag.cs
- HttpContext.cs
- GetRecipientListRequest.cs
- TcpProcessProtocolHandler.cs
- DesignRelationCollection.cs
- FtpWebResponse.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- MembershipPasswordException.cs
- ToolStripLabel.cs
- XslAst.cs
- GridItemPattern.cs
- DataSourceDescriptorCollection.cs
- DocumentViewerBase.cs
- DllHostInitializer.cs
- TextDpi.cs
- LeaseManager.cs
- TemplateBuilder.cs
- ProfileSection.cs
- regiisutil.cs
- AssociatedControlConverter.cs
- CalloutQueueItem.cs
- initElementDictionary.cs
- AccessedThroughPropertyAttribute.cs
- ReadOnlyAttribute.cs
- DataGridViewRowConverter.cs
- HtmlTextViewAdapter.cs
- CallbackDebugElement.cs
- _LocalDataStore.cs
- IdentifierElement.cs
- CngKeyCreationParameters.cs
- OdbcError.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- EventSetter.cs
- ColorContext.cs
- XLinq.cs
- ToolStripProgressBar.cs
- EllipseGeometry.cs
- TableLayout.cs
- RectValueSerializer.cs
- SharedDp.cs
- AuthStoreRoleProvider.cs
- MouseEvent.cs
- QilChoice.cs
- Scripts.cs
- EditorBrowsableAttribute.cs
- ScriptResourceAttribute.cs
- LinqDataSourceValidationException.cs
- AsymmetricSignatureDeformatter.cs
- UrlMappingsSection.cs
- ApplicationFileCodeDomTreeGenerator.cs
- ExceptionHandlers.cs