Как получить количество столбцов и строк для таблицы в коде пользовательского интерфейса? - PullRequest
0 голосов
/ 25 декабря 2018

Я хочу получить номера строк и столбцов для таблицы, но не могу этого сделать.

вот моя таблица

WinTable uIG1Table = this.UIProMANAGEWindow.UIMachineListWindow.UIG1Window.UIG1Table;

Сначала я использовал методы, которые я видел в этой ссылке, но она не работала http://executeautomation.com/blog/storetableinlist/

   int rowCount = uIG1Table.RowCount;
   int colCount = uIG1Table.ColumnCount;

Я искал WinTable API и пытался использовать методы API.Поскольку структуры столбцов нет, я использовал ColumnHeaders для подсчета столбцов, и строка, и столбец дают мне 0. Что мне делать?

        int rowCount = uIG1Table.Rows.Count;
        int colCount = uIG1Table.ColumnHeaders.Count;

        MessageBox.Show(rowCount.ToString());
        MessageBox.Show(colCount.ToString());

1 Ответ

0 голосов
/ 27 декабря 2018

Попробуйте выполнить поиск во всех строках окна, используя следующий пример кода:

internal UITestControlCollection GetGridRows()
{
    var winSearchResults = FindWindowSearchResults();// this can be any WinWindow object

    WinRow gridRows = new WinRow(winSearchResults);

    gridRows.SearchProperties.Add(WinRow.PropertyNames.Name, "Row ", PropertyExpressionOperator.Contains);// in case of my AUT, the rows name property had "Row " at start
    gridRows.SearchConfigurations.Add(SearchConfiguration.AlwaysSearch);

    return gridRows.FindMatchingControls();

}

Получив объект строки, вы можете получить количество ячеек через свойство cell, как показано ниже:

rowFromGrid.Cells
...