Сообщество программистов Autodesk в СНГ

ADN Club => Revit API => Тема начата: Alex25 от 29-10-2020, 11:54:50

Название: Отслеживание состояния пользовательских Event
Отправлено: Alex25 от 29-10-2020, 11:54:50
Доброго времени суток. Панель создается в проекте "Application", а подписка на событие в отдельном проекте через IExternalCommnand .Подскажите, есть Dockable pane с кнопками для событий. При нажатии на кнопку в json записывается была ли нажата данная кнопка.
При скрытие панели, состояния кнопок экспортируются в json, но это только нажатие кнопки, а не действительное состояние активности события. Следовательно, чтобы включить ExternalCommand  с подпиской и отпиской на событие - должно быть два true: нажатие кнопки и активность события в проекте, тогда ExternalCommand выполняется. Когда проектировщик заново открывает Revit должны сработать активные события при последнем сеансе (не выключенные на кнопку).
Вопрос: Есть ли способ получить активные пользовательские события и отписаться от них в нужный момент (без создания json)?
Вопрос: Если ли способ лучше ?

(https://i.postimg.cc/zyK5LV0g/1.png) (https://postimg.cc/zyK5LV0g)
Название: Re: Отслеживание состояния пользовательских Event
Отправлено: Александр Игнатович от 29-10-2020, 12:09:53
Раз 20 перечитывал, вроде дошло, что ты хочешь, но я не уверен полностью.

А что тебе мешает подписываться на событие всегда, а активность функционала проверять именно в обработчике событий, тогда у тебя остается только один флаг, который ты можешь переключать по своему усмотрению по кнопкам, событиям, фазам луны?
Название: Re: Отслеживание состояния пользовательских Event
Отправлено: Alex25 от 29-10-2020, 13:00:35
Список активных событий пользователя , можно получить ?
Название: Re: Отслеживание состояния пользовательских Event
Отправлено: Александр Игнатович от 29-10-2020, 13:11:59
https://www.google.com/search?q=c%23+get+event+subscribers
Название: Re: Отслеживание состояния пользовательских Event
Отправлено: Alex25 от 30-10-2020, 09:01:44
https://www.google.com/search?q=c%23+get+event+subscribers
Спасибо