using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.ComponentModel; using Microsoft.Research.DynamicDataDisplay; namespace Microsoft.Research.DynamicDataDisplay { public sealed class ExtendedPropertyChangedEventArgs : EventArgs { public string PropertyName { get; set; } public object OldValue { get; set; } public object NewValue { get; set; } public ChangeType ChangeType { get; set; } public static ExtendedPropertyChangedEventArgs FromDependencyPropertyChanged(DependencyPropertyChangedEventArgs e) { return new ExtendedPropertyChangedEventArgs { PropertyName = e.Property.Name, NewValue = e.NewValue, OldValue = e.OldValue }; } internal ExtendedPropertyChangedEventArgs WithChangeType(ChangeType changeType) { ChangeType = changeType; return this; } } }