Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Base / MS / Internal / ComponentModel / PropertyChangeTracker.cs / 1305600 / 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
- BlockCollection.cs
- AnyAllSearchOperator.cs
- PlaceHolder.cs
- EntityStoreSchemaFilterEntry.cs
- DataServices.cs
- BroadcastEventHelper.cs
- EdmValidator.cs
- OdbcConnectionFactory.cs
- HitTestDrawingContextWalker.cs
- ContentDesigner.cs
- EditorPartCollection.cs
- ReadOnlyDictionary.cs
- Matrix3DConverter.cs
- TypeCollectionDesigner.xaml.cs
- DefaultSection.cs
- XmlSchemaExternal.cs
- StoreAnnotationsMap.cs
- StorageModelBuildProvider.cs
- SystemIPGlobalStatistics.cs
- ZipIOExtraFieldPaddingElement.cs
- SecurityTokenReferenceStyle.cs
- CommittableTransaction.cs
- BuildProviderCollection.cs
- AccessorTable.cs
- CalendarDateRangeChangingEventArgs.cs
- RadioButtonFlatAdapter.cs
- DataRow.cs
- BamlResourceSerializer.cs
- SerializationBinder.cs
- NavigationProperty.cs
- ScriptResourceHandler.cs
- TagPrefixAttribute.cs
- WorkflowExecutor.cs
- XmlArrayAttribute.cs
- ListViewInsertionMark.cs
- CapabilitiesPattern.cs
- DbMetaDataFactory.cs
- DataBindingCollection.cs
- DataViewManager.cs
- DefaultMemberAttribute.cs
- TextBreakpoint.cs
- RegistryPermission.cs
- HtmlSelect.cs
- Literal.cs
- SystemDiagnosticsSection.cs
- TextBoxBase.cs
- WorkflowTransactionService.cs
- WebBaseEventKeyComparer.cs
- SimpleTypesSurrogate.cs
- NameValuePermission.cs
- RSACryptoServiceProvider.cs
- TokenBasedSetEnumerator.cs
- DynamicVirtualDiscoSearcher.cs
- ColorConvertedBitmap.cs
- Transactions.cs
- DataGridBeginningEditEventArgs.cs
- TextBox.cs
- BinaryQueryOperator.cs
- OrthographicCamera.cs
- WindowsProgressbar.cs
- SystemIPv6InterfaceProperties.cs
- FormsAuthenticationConfiguration.cs
- XmlnsCompatibleWithAttribute.cs
- SafeFindHandle.cs
- CollectionChangedEventManager.cs
- TaiwanCalendar.cs
- SmtpNtlmAuthenticationModule.cs
- BitArray.cs
- BitmapImage.cs
- StdValidatorsAndConverters.cs
- SafeRightsManagementQueryHandle.cs
- ProfileElement.cs
- SetterBaseCollection.cs
- PageRanges.cs
- EventManager.cs
- SqlDataAdapter.cs
- ToolStripPanelRow.cs
- MDIControlStrip.cs
- StrokeRenderer.cs
- listitem.cs
- XpsFilter.cs
- RegisteredExpandoAttribute.cs
- PageSettings.cs
- SubqueryRules.cs
- DetailsViewAutoFormat.cs
- CodeSnippetExpression.cs
- EventEntry.cs
- Pen.cs
- RegexWorker.cs
- SettingsPropertyCollection.cs
- BamlReader.cs
- CommandHelper.cs
- IUnknownConstantAttribute.cs
- PreviewPrintController.cs
- InvokeProviderWrapper.cs
- BinaryFormatterWriter.cs
- HttpWrapper.cs
- TransactionValidationBehavior.cs
- CompleteWizardStep.cs
- CfgParser.cs