/// <summary>
        ///     Adds a change event handler to this descriptor.
        /// </summary>
        public override void AddValueChanged(object component, EventHandler handler)
        {
            // Potentially optimize this if the individual cost of a change tracker is too high.

            DependencyObject DO = FromObj(component);

            if (_trackers == null)
            {
                _trackers = new Dictionary <DependencyObject, PropertyChangeTracker>();
            }

            PropertyChangeTracker tracker;

            if (!_trackers.TryGetValue(DO, out tracker))
            {
                tracker = new PropertyChangeTracker(DO, _dp);
                _trackers.Add(DO, tracker);
            }

            tracker.Changed += handler;
        }
Exemplo n.º 2
0
        /// <summary>
        ///     Adds a change event handler to this descriptor.
        /// </summary>
        public override void AddValueChanged(object component, EventHandler handler)
        {
            //


            DependencyObject DO = FromObj(component);

            if (_trackers == null)
            {
                _trackers = new Dictionary <DependencyObject, PropertyChangeTracker>();
            }

            PropertyChangeTracker tracker;

            if (!_trackers.TryGetValue(DO, out tracker))
            {
                tracker = new PropertyChangeTracker(DO, _dp);
                _trackers.Add(DO, tracker);
            }

            tracker.Changed += handler;
        }
        /// <summary>
        ///     Adds a change event handler to this descriptor.
        /// </summary>
        public override void AddValueChanged(object component, EventHandler handler) 
        {
            // 


            DependencyObject DO = FromObj(component);
            if (_trackers == null) 
            {
                _trackers = new Dictionary<DependencyObject, PropertyChangeTracker>();
            }

            PropertyChangeTracker tracker;
            if (!_trackers.TryGetValue(DO, out tracker)) 
            {
                tracker = new PropertyChangeTracker(DO, _dp);
                _trackers.Add(DO, tracker);
            }

            tracker.Changed += handler;
        }