0
我目前正在为使用Telerik ASP.Net框架并已运行到阻止程序的Web数据录入应用程序开发测试框架。如果我在调试模式下遍历我的代码,测试将找到我正在查找的文本框并输入一些测试数据,然后将该数据保存到数据库。我遇到的问题是,当我让测试自行运行时,测试失败,说它无法处理已声明的列。这里是我的代码:Watin:在telerik gridview中遍历文本框
/*Method to enter test data into cell*/
private TableCell EditFieldCell(string columnHeader)
{
var columnIndex = ColumnIndex(columnHeader);
if (columnIndex == -1)
throw new InvalidOperationException(String.Format("Column {0} not found.", columnHeader));
return NewRecordRow.TableCells[columnIndex];
}
/*Method to return column index of column searching for*/
public int ColumnIndex(string columnHeader)
{
var rgTable = GridTable;
var rgCount = 0;
var rgIndex = -1;
foreach (var rgRow in rgTable.TableRows)
{
foreach (var rgElement in rgRow.Elements)
{
if (rgElement.Text != null)
{
if (rgElement.Text.Equals(columnHeader))
{
rgIndex = rgCount;
break;
}
}
rgCount++;
}
return rgIndex;
}
我的想法是,用的东西,因为当我让时返回的rgIndex值运行的程序是-1,告诉我,在代码嵌套我的for循环中呈现的问题for循环未运行。
是可以获得表列索引TIA, 比尔·扬曼
感谢 - 这奏效了,虽然我也有稍作修改,并期待在header.Text而不是header.Class因为编写此应用程序的供应商在使用控件ID或类ID方面做得并不好。 – 2012-02-10 16:57:48
太棒了,所以你可以把这个问题标记为回答:) – alonp 2012-02-14 07:56:24