Можем ли мы "щелкнуть" на полях редактирования, используя библиотеки Microsoft UIAutomation
В моем приложении у нас есть элемент управления webbrowserpageviewer. когда веб-страница открыта, пользователь должен щелкнуть некоторые из полей редактирования, присутствующих на веб-странице. Мы пытаемся смоделировать это поведение, используя библиотеки автоматизации пользовательского интерфейса. Я немного новичок в этом, но я вижу, что мы можем имитировать нажатия кнопок, используя InvokePattern, так есть ли подобный метод для имитации нажатий в окне редактирования?
1 ответ
Насколько я знаю, у вас есть два способа редактировать текстовые поля:
1.Вы можете добавить текст в текстовое поле, используя шаблон, предоставленный МСА. Этот шаблон называется ValuePattern.
В C# вы можете сделать это следующим образом:
ValuePattern vp = element_object.GetCurrentPattern(ValuePattern.Pattern) as ValuePattern;
vp.SetValue(value_to_set);
2. Вы можете получить ограничивающий прямоугольник текстового поля, используя свойства AutomationElement, после чего вы можете щелкнуть в нем.
Получение ограничительного прямоугольника в C#:
automationelement_object.GetCurrentPropertyValue(AutomationElement.BoundingRectangleProperty)