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
- ScriptingScriptResourceHandlerSection.cs
- ResourcesBuildProvider.cs
- FixedPosition.cs
- Boolean.cs
- XamlStyleSerializer.cs
- SqlErrorCollection.cs
- RectValueSerializer.cs
- XPathScanner.cs
- DataGridTable.cs
- HtmlInputCheckBox.cs
- GridViewCancelEditEventArgs.cs
- HostingPreferredMapPath.cs
- SingleResultAttribute.cs
- TdsEnums.cs
- BitmapEffectInputConnector.cs
- PolyLineSegment.cs
- DropShadowBitmapEffect.cs
- UseLicense.cs
- CanExecuteRoutedEventArgs.cs
- FormViewRow.cs
- VariableAction.cs
- TdsParserStaticMethods.cs
- SoapAttributes.cs
- Vector.cs
- DbConnectionOptions.cs
- ApplyTemplatesAction.cs
- SequentialWorkflowHeaderFooter.cs
- MarkupCompilePass1.cs
- DynamicValueConverter.cs
- ApplicationActivator.cs
- UserControl.cs
- IDictionary.cs
- OdbcStatementHandle.cs
- JpegBitmapEncoder.cs
- FormsAuthenticationUserCollection.cs
- HiddenField.cs
- SynchronizedMessageSource.cs
- ListViewDeletedEventArgs.cs
- MouseEvent.cs
- ISAPIApplicationHost.cs
- ProcessMessagesAsyncResult.cs
- Hashtable.cs
- CancelEventArgs.cs
- ListViewGroupItemCollection.cs
- CreateParams.cs
- GenericWebPart.cs
- JoinSymbol.cs
- Delegate.cs
- HttpWriter.cs
- ElementHostAutomationPeer.cs
- XmlKeywords.cs
- TextFormatterContext.cs
- LabelAutomationPeer.cs
- Listbox.cs
- ScriptComponentDescriptor.cs
- LinkedResourceCollection.cs
- SessionStateUtil.cs
- ContextMenuStrip.cs
- ScrollableControlDesigner.cs
- CompilationRelaxations.cs
- AutoFocusStyle.xaml.cs
- DropDownList.cs
- XmlILAnnotation.cs
- ExpressionParser.cs
- HttpDebugHandler.cs
- UniqueIdentifierService.cs
- Menu.cs
- RangeValidator.cs
- Publisher.cs
- EntityStoreSchemaGenerator.cs
- SimpleRecyclingCache.cs
- OverlappedContext.cs
- FormsAuthenticationEventArgs.cs
- CatalogZone.cs
- CheckBoxPopupAdapter.cs
- ConstraintCollection.cs
- RegexStringValidator.cs
- PolyLineSegment.cs
- WindowProviderWrapper.cs
- OleDbCommandBuilder.cs
- ImmutableObjectAttribute.cs
- GridViewAutomationPeer.cs
- SolidColorBrush.cs
- UITypeEditor.cs
- StrongNameMembershipCondition.cs
- DataViewManagerListItemTypeDescriptor.cs
- Dictionary.cs
- DatasetMethodGenerator.cs
- ListViewContainer.cs
- TreeNodeStyleCollection.cs
- UserCancellationException.cs
- MenuCommands.cs
- SchemaImporterExtensionElementCollection.cs
- PathSegment.cs
- SocketPermission.cs
- Crypto.cs
- SelectorAutomationPeer.cs
- EventLogInternal.cs
- DrawListViewColumnHeaderEventArgs.cs
- TrustSection.cs