Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / System.Runtime.DurableInstancing / System / Runtime / Collections / ValidatingCollection.cs / 1305376 / ValidatingCollection.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Runtime.Collections { using System.Collections.ObjectModel; // simple helper class to allow passing in a func that performs validations of // acceptible values class ValidatingCollection: Collection { public ValidatingCollection() { } public Action OnAddValidationCallback { get; set; } public Action OnMutateValidationCallback { get; set; } void OnAdd(T item) { if (OnAddValidationCallback != null) { OnAddValidationCallback(item); } } void OnMutate() { if (OnMutateValidationCallback != null) { OnMutateValidationCallback(); } } protected override void ClearItems() { OnMutate(); base.ClearItems(); } protected override void InsertItem(int index, T item) { OnAdd(item); base.InsertItem(index, item); } protected override void RemoveItem(int index) { OnMutate(); base.RemoveItem(index); } protected override void SetItem(int index, T item) { OnAdd(item); OnMutate(); base.SetItem(index, item); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EncodingDataItem.cs
- KernelTypeValidation.cs
- DocumentSequence.cs
- SatelliteContractVersionAttribute.cs
- BmpBitmapDecoder.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- WebPartAddingEventArgs.cs
- AttributeEmitter.cs
- ValidationResult.cs
- DbModificationCommandTree.cs
- SocketInformation.cs
- UnsafePeerToPeerMethods.cs
- ClientFormsAuthenticationMembershipProvider.cs
- ObjectListDataBindEventArgs.cs
- LinqDataSourceContextEventArgs.cs
- SmiMetaData.cs
- RemotingAttributes.cs
- Int64AnimationUsingKeyFrames.cs
- SafeIUnknown.cs
- DocumentGridContextMenu.cs
- RotateTransform.cs
- BrowserCapabilitiesFactory.cs
- CalendarDataBindingHandler.cs
- BufferedOutputStream.cs
- MissingMethodException.cs
- SecurityTokenAttachmentMode.cs
- control.ime.cs
- RSAPKCS1KeyExchangeFormatter.cs
- MeasureItemEvent.cs
- ReadOnlyAttribute.cs
- ServicePointManagerElement.cs
- BufferCache.cs
- AssemblyBuilder.cs
- CodeParameterDeclarationExpressionCollection.cs
- UIHelper.cs
- WebProxyScriptElement.cs
- GridViewCancelEditEventArgs.cs
- Instrumentation.cs
- recordstate.cs
- ProofTokenCryptoHandle.cs
- Helpers.cs
- CodeBlockBuilder.cs
- IPAddressCollection.cs
- LinkUtilities.cs
- RangeValidator.cs
- ParamArrayAttribute.cs
- CodeMethodReturnStatement.cs
- DesignerCapabilities.cs
- NativeCompoundFileAPIs.cs
- PropertyEmitter.cs
- Effect.cs
- TypeLoadException.cs
- ChtmlCommandAdapter.cs
- SizeConverter.cs
- EntityDataSourceMemberPath.cs
- Visual.cs
- RoleManagerEventArgs.cs
- ProviderConnectionPointCollection.cs
- TemplatePartAttribute.cs
- ControlAdapter.cs
- List.cs
- StringFormat.cs
- CommonObjectSecurity.cs
- StylusDownEventArgs.cs
- HttpProtocolImporter.cs
- CodeSnippetStatement.cs
- HttpAsyncResult.cs
- Popup.cs
- GetCryptoTransformRequest.cs
- EntityFunctions.cs
- BaseTreeIterator.cs
- SrgsItemList.cs
- TextViewBase.cs
- BindableTemplateBuilder.cs
- XdrBuilder.cs
- Size3D.cs
- COM2PropertyDescriptor.cs
- FormClosingEvent.cs
- UniqueSet.cs
- Vector3DAnimationBase.cs
- Menu.cs
- FormClosedEvent.cs
- SessionParameter.cs
- SupportsEventValidationAttribute.cs
- MethodBuilderInstantiation.cs
- RowVisual.cs
- SEHException.cs
- Ops.cs
- PropertyPushdownHelper.cs
- TextContainer.cs
- ToolStripGripRenderEventArgs.cs
- HttpCachePolicyElement.cs
- WebEventCodes.cs
- Calendar.cs
- PropertyPathWorker.cs
- SafeNativeMethods.cs
- ButtonBase.cs
- PackUriHelper.cs
- ExpressionBindings.cs
- ObservableCollectionDefaultValueFactory.cs