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

ADN Club => Revit API => Тема начата: Biorn от 04-06-2018, 21:39:32

Название: Вызов работы класса Revit из WinForm
Отправлено: Biorn от 04-06-2018, 21:39:32
Наверняка распространенная проблема, но решения сейчас так и не нашел.
Хочу к событию нажатия checkbox в windows form привязать работу класса revit, а точнее его execute. Я знаю, что нельзя это сделать напрямую. Ведь на ribbon панели нет чекбоксов, а к радио я не нашел обработчика действий.
Поделитесь способами, как заставить событие WinForm выполнить execute?

Код - C# [Выбрать]
  1.  private void checkBox1_CheckedChanged(object sender, EventArgs e)
  2.         {
  3.             if (checkBox1.Checked == true)
  4.             {
  5.                 variables.upd = true;
  6.                 //здесь должна быть команда выполнения execute
  7.             }
  8.             else
  9.             {
  10.                 variables.upd = false;
  11.                 //и здесь
  12.             }
  13.         }
Название: Re: Вызов работы класса Revit из WinForm
Отправлено: Александр Игнатович от 05-06-2018, 11:59:41
День добрый!

Если Ваша форма модальная, просто сделайте необходимые манипуляции, например, передайте объект документа через конструктор Вашей формы.

Если диалог немодальный, посмотрите как работать с фреймворком External events. В SDK есть соответствующий пример Samples\ModelessDialog\ModelessForm_ExternalEvent\CS