Я обнаружил, что при попытке найти панель инструментов владельца элемента было не так просто, как просто посмотреть на владельца элемента. Ниже приведен некоторый псевдокод, который, я думаю, должен работать. Может ли кто-нибудь увидеть какие-либо проблемы с этим или он должен работать во всех случаях?
(1) Является ли тип Item.Owner ToolStrip?
(2) Да, вернуть товар.Владелец
(3) Нет, Предмет = Предмет.Владелец. Перейти к (1).
Расчетное время прибытия:
Я хотел бы сделать тест общим тестом. Поэтому вместо тестирования ToolStrip я должен тестировать ToolStrip, MenuStrip, StatusStrip или ContextMenuStrip.
Чем 4 упомянутых выше элемента отличаются от других производных элементов управления ToolStrip, таких как ToolStripDropDown, ToolStripDropDownMenu и ToolStripOverflow?
ETA2: Не обращай внимания, абсолютный карп!
Насколько я могу судить, это как-то связано с Control.TopLevelControl. 3 элемента управления выше, которые нельзя добавить в форму, возвращают TopLevelControl самих себя. Четыре допустимых элемента управления ничего не возвращают для TopLevelControl до добавления в форму, а затем для самой формы после добавления.