Как получить элементы Ribbon по id?

Автор Тема: Как получить элементы Ribbon по id?  (Прочитано 6149 раз)

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

Оффлайн mertaАвтор темы

  • ADN OPEN
  • Сообщений: 19
  • Карма: 0
Я создал кастомную вкладку, по нажатию на элемент я понимаю как получить Ribbon:
Код - C# [Выбрать]
  1. Document doc = Application.DocumentManager.MdiActiveDocument;
  2.         if (parameter is RibbonButton)
  3.         {
  4.             RibbonButton button = parameter as RibbonButton;
  5.  
  6.             doc.Editor.WriteMessage("\nRibbonButton Executed: " + button.Text);
  7.         }
, а вот как получить элемент по ID?
По ID который мы задаем при создании Ribbon:
Код - C# [Выбрать]
  1. Autodesk.Windows.RibbonCombo comboboxWithPoint = new RibbonCombo();
  2. comboboxWithPoint.Id = "_comboboxWithPoint";

Отмечено как Решение Александр Ривилис 24-03-2019, 22:00:41

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Как получить элементы Ribbon по id?
« Ответ #1 : 24-03-2019, 19:07:00 »
Попробуй через один из методов:
Код - C# [Выбрать]
  1. Autodesk.Windows.RibbonControl.FindItem
Хотя они определены как:
Код - C# [Выбрать]
  1. [InternalUseOnly]
но думаю, что должны работать.
Но если будет дублирование Id (т.е. у какого-то другого элемента есть такой же Id), то найден будет первый из них.
Поэтому советую генерировать уникальные Id.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн mertaАвтор темы

  • ADN OPEN
  • Сообщений: 19
  • Карма: 0
Re: Как получить элементы Ribbon по id?
« Ответ #2 : 24-03-2019, 20:05:28 »
Александр Ривилис
Попробуй через один из методов:
Код - C# [Выбрать]
  1. Autodesk.Windows.RibbonControl.FindItem
Хотя они определены как:
Код - C# [Выбрать]
  1. [InternalUseOnly]
А если объявить переменную в классе, а не в методе. Ошибки в каком нибудь случаи не может быть?

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Как получить элементы Ribbon по id?
« Ответ #3 : 24-03-2019, 20:06:51 »
А если объявить переменную в классе, а не в методе. Ошибки в каком нибудь случаи не может быть?
Это к чему???
Вот в этом примере используется FindItem: http://adn-cis.org/sinxronizacziya-lentyi-i-sistemnoj-peremennoj.html
« Последнее редактирование: 24-03-2019, 20:37:09 от Александр Ривилис »
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн mertaАвтор темы

  • ADN OPEN
  • Сообщений: 19
  • Карма: 0
Re: Как получить элементы Ribbon по id?
« Ответ #4 : 24-03-2019, 21:10:10 »
Александр Ривилис, studio попросила просто дописать что-то в манифест проекта, испугался.
Большое спасибо за помощь!!