[WPF] Подписка на событие изменения свойства
От: skodnik  
Дата: 29.12.10 15:14
Оценка:
Есть контрол типа PropertyGrid для WPF здесь
Ему в качестве параметра нужно передать ссылку на объект, и получаем таблицу со значениями свойств этого объекта и возможностью редактирования.
Мне же на эту таблицу не надо передавать все свойства объекта — их очень много. Мне достаточно редактировать свойства X,Y, Width & Height.
Для этого я написал вот такой Wrapper:

public class ControlWrapper
    {
        private ContentControl _source;
        public ControlWrapper(ContentControl source)
        {
            _source = source;
        }

        public double X 
        {
            get { return _source.X; }
            set { _source.X = value; }
        }

        public double Y
        {
            get { return _source.Y; }
            set { _source.Y = value; }
        }

        public double Width
        {
            get { return _source.Width; }
            set { _source.Width = value; }
        }

        public double Height
        {
            get { return _source.Height; }
            set { _source.Height = value; }
        }
    }


В итоге имеем следующее поведение: при изменении свойства через PropertyGrid — контрол меняет свое положение/размер. Если же контрол меняет свое положение/размер другими способами, то в PropertyGrid значения не обновляются.
Как тут правильно замапить свойства у Wrapper? Подписаться на PropertyChanged у source и анализировать их?
Re: [WPF] Подписка на событие изменения свойства
От: skodnik  
Дата: 29.12.10 15:22
Оценка:
Здравствуйте, skodnik, Вы писали:

Да. Как оказалось ретрансляция NotifyPropertyChanged помогла.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.