Обработка события DocumentChanged

Автор Тема: Обработка события DocumentChanged  (Прочитано 4068 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн Федор ЖековАвтор темы

  • ADN OPEN
  • Сообщений: 3
  • Карма: 0
Добрый день!
Обрабатываю событие DocumentChanged, при возникновении события получаю список id измененных элементов и затем обрабатываю их:
Код - C# [Выбрать]
  1.  public Result OnStartup(UIControlledApplication application)
  2.         {
  3.            ...
  4.             application.ControlledApplication.DocumentChanged += ControlledApplication_DocumentChanged;
  5.             return Result.Succeeded;
  6.         }
  7. private void ControlledApplication_DocumentChanged(object sender, Autodesk.Revit.DB.Events.DocumentChangedEventArgs e)
  8.         {
  9.                 var elements = e.GetModifiedElementIds();
  10.                 ...
  11.         }
Все хорошо работает за исключением одного случая: если я выбираю элемент потом меняю в свойствах любой параметр, затем на панели свойств нажимаю кнопку применить:
Извините, вам запрещён просмотр содержимого спойлеров.

метод e.GetModifiedElementIds() возвращает пустой список. В чем может быть проблема?

Отмечено как Решение Александр Ривилис 12-05-2016, 17:34:46

Оффлайн Виктор Чекалин

  • Administrator
  • *****
  • Сообщений: 694
  • Карма: 111
  • Skype: chekalin-v
Re: Обработка события DocumentChanged
« Ответ #1 : 25-01-2016, 17:58:08 »
Федор, приветствую на форуме!

Только что проверил. Ид элемента возвращается в этом случае.
Правда есть одно но... При изменении свойства объекта, обработчик события вызывается 2  раза. В первом случае действительно возвращается пустой список. Во втором, возвращается нужный идентификатор.