Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Base / System / ComponentModel / CurrentChangingEventManager.cs / 1 / CurrentChangingEventManager.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: Manager for the CurrentChanging event in the "weak event listener" // pattern. See WeakEventTable.cs for an overview. // //--------------------------------------------------------------------------- using System; using System.ComponentModel; // ICollectionView.CurrentChanging using System.Windows; // WeakEventManager namespace System.ComponentModel { ////// Manager for the ICollectionView.CurrentChanging event. /// public class CurrentChangingEventManager : WeakEventManager { #region Constructors // // Constructors // private CurrentChangingEventManager() { } #endregion Constructors #region Public Methods // // Public Methods // ////// Add a listener to the given source's event. /// public static void AddListener(ICollectionView source, IWeakEventListener listener) { CurrentManager.ProtectedAddListener(source, listener); } ////// Remove a listener to the given source's event. /// public static void RemoveListener(ICollectionView source, IWeakEventListener listener) { CurrentManager.ProtectedRemoveListener(source, listener); } #endregion Public Methods #region Protected Methods // // Protected Methods // ////// Listen to the given source for the event. /// protected override void StartListening(object source) { ICollectionView typedSource = (ICollectionView)source; typedSource.CurrentChanging += new CurrentChangingEventHandler(OnCurrentChanging); } ////// Stop listening to the given source for the event. /// protected override void StopListening(object source) { ICollectionView typedSource = (ICollectionView)source; typedSource.CurrentChanging -= new CurrentChangingEventHandler(OnCurrentChanging); } #endregion Protected Methods #region Private Properties // // Private Properties // // get the event manager for the current thread private static CurrentChangingEventManager CurrentManager { get { Type managerType = typeof(CurrentChangingEventManager); CurrentChangingEventManager manager = (CurrentChangingEventManager)GetCurrentManager(managerType); // at first use, create and register a new manager if (manager == null) { manager = new CurrentChangingEventManager(); SetCurrentManager(managerType, manager); } return manager; } } #endregion Private Properties #region Private Methods // // Private Methods // // event handler for CurrentChanging event private void OnCurrentChanging(object sender, CurrentChangingEventArgs args) { DeliverEvent(sender, args); } #endregion Private Methods } } // 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
- StylusPointPropertyInfoDefaults.cs
- DataKey.cs
- MenuItem.cs
- Tokenizer.cs
- DataGridViewCellValidatingEventArgs.cs
- GenerateTemporaryTargetAssembly.cs
- FakeModelPropertyImpl.cs
- QEncodedStream.cs
- CodeDOMUtility.cs
- CustomErrorCollection.cs
- ProfileSettingsCollection.cs
- ToolStripSettings.cs
- Rule.cs
- DispatchWrapper.cs
- ReaderWriterLockWrapper.cs
- Socket.cs
- BaseInfoTable.cs
- TrackBarRenderer.cs
- SQLChars.cs
- TypeValidationEventArgs.cs
- Rotation3DAnimation.cs
- MethodImplAttribute.cs
- WeakReadOnlyCollection.cs
- BamlStream.cs
- ValueUtilsSmi.cs
- MappingException.cs
- UnsafeNativeMethods.cs
- AdornerLayer.cs
- HttpConfigurationContext.cs
- ContentIterators.cs
- GetPageCompletedEventArgs.cs
- UshortList2.cs
- ExtendedProperty.cs
- AnnotationDocumentPaginator.cs
- WebPartConnectionsConnectVerb.cs
- ReadOnlyPropertyMetadata.cs
- CollectionEditor.cs
- SettingsPropertyIsReadOnlyException.cs
- EnumValidator.cs
- TextShapeableCharacters.cs
- Transform3D.cs
- XsltCompileContext.cs
- DrawingCollection.cs
- EntitySqlQueryCacheKey.cs
- ObjectCache.cs
- FileDataSource.cs
- EditorBrowsableAttribute.cs
- TextCollapsingProperties.cs
- BaseParagraph.cs
- TreeNodeSelectionProcessor.cs
- TransformerInfo.cs
- TypeLibraryHelper.cs
- SmtpNegotiateAuthenticationModule.cs
- _CookieModule.cs
- ReliabilityContractAttribute.cs
- Send.cs
- DefaultObjectMappingItemCollection.cs
- SubclassTypeValidatorAttribute.cs
- DbProviderServices.cs
- FormViewModeEventArgs.cs
- URIFormatException.cs
- _SafeNetHandles.cs
- GridItemCollection.cs
- Message.cs
- CancellationTokenRegistration.cs
- BooleanExpr.cs
- GetIndexBinder.cs
- RootBuilder.cs
- RulePatternOps.cs
- HttpListenerException.cs
- PropertyCondition.cs
- X509ChainPolicy.cs
- StorageMappingItemLoader.cs
- Sql8ExpressionRewriter.cs
- ToolBarTray.cs
- BinaryWriter.cs
- SendMailErrorEventArgs.cs
- Certificate.cs
- HeaderElement.cs
- AsyncOperationManager.cs
- Part.cs
- SendMailErrorEventArgs.cs
- HashFinalRequest.cs
- InitializationEventAttribute.cs
- EntitySqlQueryCacheEntry.cs
- TypeUtils.cs
- TextEditor.cs
- HelpProvider.cs
- StringHelper.cs
- ValueExpressions.cs
- WmiInstallComponent.cs
- Page.cs
- PageRequestManager.cs
- EntitySetBaseCollection.cs
- MaskInputRejectedEventArgs.cs
- RequestQueue.cs
- TextLineResult.cs
- AsyncResult.cs
- Clause.cs
- MethodBuilder.cs