Обновление свойства в PropertyGrid при изменении значения свойства в другом месте? - PullRequest
2 голосов
/ 10 августа 2010

У нас есть объект, который назначен PropertyGrid с помощью свойства SelectedObject PropertyGrid. Этот объект содержит несколько свойств, которые обновляются кодом в разных местах. Для целей этого примера предположим, что одно является простым обновлением (то есть: вызвано следующим кодом - Person.FirstName = "Gareth"), а другое немного более сложным; продолжительность от времени начала (то есть: Person.AgeInSeconds).

Кто-нибудь знает, каков самый простой способ автоматического обновления значения этого свойства в PropertyGrid при изменении значения свойств?

Заранее спасибо,

Ник

1 Ответ

0 голосов
/ 03 сентября 2010

Попробуйте добавить интерфейс INotifyPropertyChanged к вашему объекту и затем вызвать событие, когда свойство обновляется в установщике. Я не уверен, что PropertyGrid ищет и слушает этот интерфейс, но стоит попробовать.

Если нет, вы всегда можете сделать это самостоятельно. Поэтому каждый раз, когда вы присваиваете SelectedObject, вы подключаете событие обновления интерфейса INotifyPropertyChanged, и при каждом запуске вы получаете PropertyGrid для обновления. Когда он удаляется из SelectedObject, вы удаляете перехват событий.

...