Нажмите меню "Файл", используя проблему элемента автоматизации
- Привет!
У меня есть странное поведение, которое я не могу понять, как решить.
Проблема в том, что я хотел бы нажать кнопку меню "Файл" в Lightroom (в блокноте она работает нормально), но Expand-pattern выдает исключение, хотя кнопка "файл" на самом деле поддерживает шаблон ExpandCollapse (по крайней мере Inspect.exe говорит так).
Ниже приведен краткий пример того, чего я пытаюсь достичь (обработка ошибок и другие вещи опущены для простоты):
private void ClickFileMenu() { try { // Application = Lightroom int processID = 4448; // Get root element (OK) var rootEelement = AutomationElement.RootElement.FindFirst(TreeScope.Descendants, new PropertyCondition(AutomationElement.ProcessIdProperty, processID)); // Get 'File' menu element (OK) var fileMenuElement = rootEelement.FindFirst(TreeScope.Descendants, new PropertyCondition(AutomationElement.NameProperty, "File")); // Get the expand/collapse pattern (and yes, it exist according to Inspect.exe) ExpandCollapsePattern expandPattern = ExpandCollapsePattern)fileMenuElement.GetCurrentPattern(ExpandCollapsePattern.Pattern); // (OK) // Expand (FAIL) expandPattern.Expand(); } catch (Exception exception) { // Exception occur with message: "Operation cannot be performed." var error = exception; } }
Есть идеи, что я делаю не так?
С Уважением Мистер Финч