Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Base / System / ComponentModel / CurrentChangedEventManager.cs / 1 / CurrentChangedEventManager.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: Manager for the CurrentChanged event in the "weak event listener" // pattern. See WeakEventTable.cs for an overview. // //--------------------------------------------------------------------------- using System; using System.Windows; // WeakEventManager namespace System.ComponentModel { ////// Manager for the ICollectionView.CurrentChanged event. /// public class CurrentChangedEventManager : WeakEventManager { #region Constructors // // Constructors // private CurrentChangedEventManager() { } #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.CurrentChanged += new EventHandler(OnCurrentChanged); } ////// Stop listening to the given source for the event. /// protected override void StopListening(object source) { ICollectionView typedSource = (ICollectionView)source; typedSource.CurrentChanged -= new EventHandler(OnCurrentChanged); } #endregion Protected Methods #region Private Properties // // Private Properties // // get the event manager for the current thread private static CurrentChangedEventManager CurrentManager { get { Type managerType = typeof(CurrentChangedEventManager); CurrentChangedEventManager manager = (CurrentChangedEventManager)GetCurrentManager(managerType); // at first use, create and register a new manager if (manager == null) { manager = new CurrentChangedEventManager(); SetCurrentManager(managerType, manager); } return manager; } } #endregion Private Properties #region Private Methods // // Private Methods // // event handler for CurrentChanged event private void OnCurrentChanged(object sender, EventArgs 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. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: Manager for the CurrentChanged event in the "weak event listener" // pattern. See WeakEventTable.cs for an overview. // //--------------------------------------------------------------------------- using System; using System.Windows; // WeakEventManager namespace System.ComponentModel { ////// Manager for the ICollectionView.CurrentChanged event. /// public class CurrentChangedEventManager : WeakEventManager { #region Constructors // // Constructors // private CurrentChangedEventManager() { } #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.CurrentChanged += new EventHandler(OnCurrentChanged); } ////// Stop listening to the given source for the event. /// protected override void StopListening(object source) { ICollectionView typedSource = (ICollectionView)source; typedSource.CurrentChanged -= new EventHandler(OnCurrentChanged); } #endregion Protected Methods #region Private Properties // // Private Properties // // get the event manager for the current thread private static CurrentChangedEventManager CurrentManager { get { Type managerType = typeof(CurrentChangedEventManager); CurrentChangedEventManager manager = (CurrentChangedEventManager)GetCurrentManager(managerType); // at first use, create and register a new manager if (manager == null) { manager = new CurrentChangedEventManager(); SetCurrentManager(managerType, manager); } return manager; } } #endregion Private Properties #region Private Methods // // Private Methods // // event handler for CurrentChanged event private void OnCurrentChanged(object sender, EventArgs 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
- _NTAuthentication.cs
- ControlType.cs
- SqlClientPermission.cs
- ObjectStateEntryDbDataRecord.cs
- CodeTypeParameter.cs
- Util.cs
- HwndProxyElementProvider.cs
- ContextBase.cs
- ContentType.cs
- dtdvalidator.cs
- AssemblyInfo.cs
- ProxyWebPart.cs
- KnownTypesHelper.cs
- ClientSession.cs
- GeometryHitTestResult.cs
- TextView.cs
- StringWriter.cs
- CanonicalXml.cs
- GlyphCache.cs
- KnownTypesProvider.cs
- CodePageEncoding.cs
- ComContractElement.cs
- KeyConverter.cs
- XmlWellformedWriter.cs
- ConfigurationSection.cs
- XmlUrlResolver.cs
- DataGridTableStyleMappingNameEditor.cs
- OverflowException.cs
- TableSectionStyle.cs
- SHA384Managed.cs
- GifBitmapEncoder.cs
- httpserverutility.cs
- XmlEntityReference.cs
- XmlSchema.cs
- Helpers.cs
- UrlMappingsSection.cs
- OleDbFactory.cs
- TypeSchema.cs
- DbConnectionPool.cs
- BindingMemberInfo.cs
- TemplateControlParser.cs
- ButtonStandardAdapter.cs
- _ProxyRegBlob.cs
- InternalResources.cs
- MeasurementDCInfo.cs
- ServerIdentity.cs
- UnauthorizedAccessException.cs
- LineGeometry.cs
- UriParserTemplates.cs
- TypeDependencyAttribute.cs
- ClrProviderManifest.cs
- FontEmbeddingManager.cs
- QueryTaskGroupState.cs
- PolicyValidationException.cs
- TextOptionsInternal.cs
- CodeCommentStatementCollection.cs
- ErrorItem.cs
- KeyProperty.cs
- CompositeClientFormatter.cs
- AnyReturnReader.cs
- TimerElapsedEvenArgs.cs
- MarshalDirectiveException.cs
- EntityContainer.cs
- XmlSchemaComplexContentExtension.cs
- TypeInfo.cs
- GregorianCalendar.cs
- PlatformCulture.cs
- CodeNamespace.cs
- CertificateElement.cs
- ScopelessEnumAttribute.cs
- EntityDataSourceSelectingEventArgs.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- PersonalizablePropertyEntry.cs
- Point3D.cs
- BitConverter.cs
- SessionStateUtil.cs
- WorkflowTraceTransfer.cs
- DeadCharTextComposition.cs
- TextServicesCompartment.cs
- XmlSchemaValidator.cs
- BindingExpressionBase.cs
- Utils.cs
- ImageIndexConverter.cs
- RightsManagementInformation.cs
- InvalidOleVariantTypeException.cs
- EntityClientCacheEntry.cs
- SHA384.cs
- Math.cs
- EntityProviderServices.cs
- SafeNativeMethodsCLR.cs
- SystemIPAddressInformation.cs
- ParserOptions.cs
- WorkflowServiceHost.cs
- PagerStyle.cs
- CreateParams.cs
- WorkflowApplicationCompletedException.cs
- TraceContextEventArgs.cs
- MobilePage.cs
- WorkflowTimerService.cs
- HelpInfo.cs