Используя UIAutomation в Windows Forms, я пытаюсь получить любой элемент управления с помощью мыши в определенной форме.Цель состоит в том, чтобы воздействовать на элементы управления приложения, извлекать их и воздействовать на них.
Проблема, с которой я сталкиваюсь много раз, заключается в том, что я не могу найти кнопку с инструментами.Каждый раз, когда я получаю панель (не родитель и не дочерняя кнопка, которую я хочу, но брат и сестра родителя).
Это кнопка инструмента, которую я хочу получить: .
То же самоеcontrol, но в Inspect.exe (выделено: элемент управления, который я получаю):
Я думал, что это из-за порядка z элементов управления, затем я попытался использовать элементы управления одного уровня для элементов управления, где ихbounds содержит мышь (для получения всех элементов управления под курсором в любом случае их порядок z).Это не удается, потому что кнопка toolstrip не извлекается.
В настоящее время я использую UIAutomation, а не CodedUI, потому что мне нужно запустить специальную программу, которая извлекает элементы управления и выполняет автоматические тесты на определенном сервере, но на самом деле у меня есть VisualЛицензия Studio Enterprise 2017 установлена на моей машине, но вторая лицензия (для сервера) и третья лицензия для коллеги по работе со мной на ней будет немного дороже.
Помнить, что программы должны быть извлеченыдинамически контролирует мышь, может кто-нибудь подскажет, что может помочь мне глубже исследовать?
Спасибо и приветствия
Используемый метод:
var aimed = AutomationElement.FromPoint(new System.Windows.Point(Cursor.Position.X, Cursor.Position.Y));