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

ADN Club => AutoCAD .NET API => Тема начата: merta от 24-03-2019, 17:05:52

Название: Как получить элементы Ribbon по id?
Отправлено: merta от 24-03-2019, 17:05:52
Я создал кастомную вкладку, по нажатию на элемент я понимаю как получить 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";
Название: Re: Как получить элементы Ribbon по id?
Отправлено: Александр Ривилис от 24-03-2019, 19:07:00
Попробуй через один из методов:
Код - C# [Выбрать]
  1. Autodesk.Windows.RibbonControl.FindItem
Хотя они определены как:
Код - C# [Выбрать]
  1. [InternalUseOnly]
но думаю, что должны работать.
Но если будет дублирование Id (т.е. у какого-то другого элемента есть такой же Id), то найден будет первый из них.
Поэтому советую генерировать уникальные Id.
Название: Re: Как получить элементы Ribbon по id?
Отправлено: merta от 24-03-2019, 20:05:28
Александр Ривилис
Попробуй через один из методов:
Код - C# [Выбрать]
  1. Autodesk.Windows.RibbonControl.FindItem
Хотя они определены как:
Код - C# [Выбрать]
  1. [InternalUseOnly]
А если объявить переменную в классе, а не в методе. Ошибки в каком нибудь случаи не может быть?
Название: Re: Как получить элементы Ribbon по id?
Отправлено: Александр Ривилис от 24-03-2019, 20:06:51
А если объявить переменную в классе, а не в методе. Ошибки в каком нибудь случаи не может быть?
Это к чему???
Вот в этом примере используется FindItem: http://adn-cis.org/sinxronizacziya-lentyi-i-sistemnoj-peremennoj.html
Название: Re: Как получить элементы Ribbon по id?
Отправлено: merta от 24-03-2019, 21:10:10
Александр Ривилис, studio попросила просто дописать что-то в манифест проекта, испугался.
Большое спасибо за помощь!!