| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > Автообновление PropertyGrid |
| Автор: marshal64 18.4.2011, 16:19 |
| Необходимо реализовать автообновление PropertyGrid, т.е. если значение свойства меняется не в PropertyGrid, а извне, то чтобы PropertyGrid обновлялось без явного Refresh. Добавление атрибутов RefreshPropertiesAttribute(RefreshProperties.All) к свойствам не помогает. Встретил только такую подсказку: "на самом деле, там несколько тоньше: нужно установить PropertyGrid.Site такой, чтобы он отвечал на GetService(typeof(IDesignerHost)) только в таком случае PropertyGrid начинает запрашивать другие сервисы, в том числе IComponentChangeService. Вообще говоря, похоже на некоторую нестыковку у микрософта — с одной стороны, PropertyDescriptor поддерживает в принципе оповещения об изменении значения, с другой — PropertyGrid на него забивает и использует сервис. Похоже, в ходе разработки поняли, что нужны транзакции для нормальной скорости работы всех связки — и сделали IComponentChangeService." Но как это реализовать не очень понятно. Всем заранее спасибо за любую помощь) |