Невозможно щелкнуть ListViewCell с нулевым значением
Разрабатываемые мной тесты обращаются к ячейкам DataGrid следующим образом:
window.Get<ListView>(gridName).Rows.First().Cells.First()
Затем нажмите на ячейку с UIItem.Click()
Метод работает нормально, если ячейка не связана с нулевым значением. В таком случае я получаю исключение:
Failed to click on ListViewCell. AutomationId:, Name:, ControlType:text, FrameworkId:WPF, bounds empty
Что имеет смысл, как видно, что элемент AutomationElement, связанный с этой ячейкой, представляет собой TextBlock с границами 0. Есть ли какой-нибудь возможный обход щелчка по такой ячейке, чтобы тесты работали?
1 ответ
Решение
То, что кажется достаточно хорошим обходным путем, заключается в следующем:
this.window.Mouse.Location = Point.Subtract(cellToClick.ClickablePoint, new Vector(12, 6));
this.window.Mouse.Click(this.window.Mouse.Location);
Так что я просто установить местоположение мыши, используя свойство TestStack.White.UIItems.Mouse
поэтому он расположен прямо над ячейкой, затем нажмите.