Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Base / MS / Internal / ComponentModel / PropertyChangeTracker.cs / 1 / PropertyChangeTracker.cs
namespace MS.Internal.ComponentModel { using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Globalization; using System.Reflection; using System.Security.Permissions; using System.Windows; ////// A change tracking expression that is used to raise property change events. /// internal class PropertyChangeTracker : Expression { internal PropertyChangeTracker(DependencyObject obj, DependencyProperty property) : base(ExpressionMode.NonSharable | ExpressionMode.ForwardsInvalidations) { Debug.Assert(obj != null && property != null); _object = obj; _property = property; ChangeSources(_object, _property, new DependencySource[] { new DependencySource(obj, property) }); } internal override void OnPropertyInvalidation(DependencyObject d, DependencyPropertyChangedEventArgs args) { DependencyProperty dp = args.Property; if (_object == d && _property == dp && Changed != null) { Changed(_object, EventArgs.Empty); } } internal void Close() { _object = null; _property = null; ChangeSources(null, null, null); } internal bool CanClose { get { return Changed == null; } } internal EventHandler Changed; private DependencyObject _object; private DependencyProperty _property; } } // 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
- TextPatternIdentifiers.cs
- FixedTextContainer.cs
- WebBrowser.cs
- DispatcherObject.cs
- AlternateView.cs
- TreeView.cs
- SyndicationSerializer.cs
- Page.cs
- ScrollBar.cs
- TrackingParameters.cs
- GrammarBuilderBase.cs
- TextParagraphProperties.cs
- AutomationIdentifier.cs
- IconConverter.cs
- TransformerInfo.cs
- FixedDocumentPaginator.cs
- ToolbarAUtomationPeer.cs
- TimeIntervalCollection.cs
- ZipIOFileItemStream.cs
- RuntimeConfigurationRecord.cs
- CopyAttributesAction.cs
- AttributeConverter.cs
- ExpressionVisitorHelpers.cs
- DataGridViewRowCollection.cs
- TextDecorationUnitValidation.cs
- ProxyFragment.cs
- XhtmlBasicLiteralTextAdapter.cs
- ToolStripComboBox.cs
- CalendarTable.cs
- Lasso.cs
- SecurityException.cs
- ControlCachePolicy.cs
- XmlBinaryWriterSession.cs
- BindingContext.cs
- UnwrappedTypesXmlSerializerManager.cs
- SecurityCriticalDataForSet.cs
- ModuleElement.cs
- VectorCollection.cs
- FormClosedEvent.cs
- AliasExpr.cs
- DefaultTraceListener.cs
- PrinterUnitConvert.cs
- RegisteredArrayDeclaration.cs
- PropertyEmitterBase.cs
- LexicalChunk.cs
- DurableOperationAttribute.cs
- XamlStackWriter.cs
- AsymmetricKeyExchangeDeformatter.cs
- TagMapInfo.cs
- GlobalizationSection.cs
- CreateUserErrorEventArgs.cs
- DataObjectFieldAttribute.cs
- DataGridrowEditEndingEventArgs.cs
- ChannelManager.cs
- TraceListener.cs
- PersonalizationProviderHelper.cs
- ApplyTemplatesAction.cs
- UncommonField.cs
- MatrixTransform.cs
- SessionStateModule.cs
- SchemaImporterExtensionElement.cs
- IdentityModelStringsVersion1.cs
- Publisher.cs
- HiddenField.cs
- WebRequestModuleElement.cs
- EdmSchemaError.cs
- KeyGestureConverter.cs
- ContextMenu.cs
- ColorBlend.cs
- XPathNavigatorReader.cs
- DesignerVerb.cs
- BasicHttpBinding.cs
- ChildDocumentBlock.cs
- ComPersistableTypeElement.cs
- Expr.cs
- ImageCodecInfoPrivate.cs
- RSAProtectedConfigurationProvider.cs
- DataBindingsDialog.cs
- SpellerInterop.cs
- TouchPoint.cs
- PersonalizableAttribute.cs
- ComboBox.cs
- ProcessModelSection.cs
- XsdCachingReader.cs
- OnOperation.cs
- PageVisual.cs
- TextEffectResolver.cs
- SqlTypeSystemProvider.cs
- Opcode.cs
- JpegBitmapDecoder.cs
- StandardToolWindows.cs
- CriticalExceptions.cs
- OdbcStatementHandle.cs
- PathTooLongException.cs
- ListViewItem.cs
- Matrix3D.cs
- tooltip.cs
- BitStack.cs
- XmlSchemaGroupRef.cs
- RequestCacheManager.cs