C#-使用teststack white获取listview列表项的子项
例如,我有一个LISTVIEW 学生名单:C#-使用teststack white获取listview列表项的子项,c#,white-framework,C#,White Framework,例如,我有一个LISTVIEW 学生名单: [ID] [NAME ] [AGE ][SCHOOL ] -> Header 1 Harry Potter 13 Hogwarts 2 Draco Malfoy 13 Hogwarts 此列表视图来自第三方应用程序,我没有源代码 我需要的是获取完整的行,例如: 1哈利波特13霍格沃茨 我使用inspect获取ID。我正在使用teststack 这是我尝试过的代码: var li
[ID] [NAME ] [AGE ][SCHOOL ] -> Header
1 Harry Potter 13 Hogwarts
2 Draco Malfoy 13 Hogwarts
此列表视图来自第三方应用程序,我没有源代码
我需要的是获取完整的行,例如:
1哈利波特13霍格沃茨
我使用inspect获取ID。我正在使用teststack
这是我尝试过的代码:
var listItem = listStudents.Items.ElementAt(0);
问题是,它只返回行的第一列,即id。
例如,在第一行中:
一,
我检查了inspect,它显示:
[- "1" list item ]
[ + "Harry Potter" text]
[ + "13" text ]
[ + "Hogwarts" text ]
是否仍有获取这些值的方法?Items属性返回第一列的集合文本是白色代码
public virtual List<string> Items
{
get
{
return Rows.Select(listViewRow => listViewRow.Cells[0].Text).ToList();
}
}
这也支持使用单元格的索引
listView.Rows[0].Cells[0]
下面是我基于答案的单元测试的示例
void CellText()
{
using (var window = StartScenario("OpenListView", "ListViewWindow"))
{
var listView = window.Get<ListView>("ListView");
ListViewRow first = listView.Rows[0];
Assert.Equal("Search", first.Cells[0].Text);
Assert.Equal("Google", first.Cells[1].Text);
ListViewRow second = listView.Rows[1];
Assert.Equal("Mail", second.Cells[0].Text);
Assert.Equal("GMail", second.Cells[1].Text);
}
}
void CellText()
{
使用(var window=StartScenario(“OpenListView”、“ListViewWindow”))
{
var listView=window.Get(“listView”);
ListViewRow first=listView.Rows[0];
Assert.Equal(“搜索”,第一个.Cells[0].Text);
Assert.Equal(“Google”,first.Cells[1].Text);
ListViewRow second=listView.Rows[1];
Assert.Equal(“邮件”,第二个.Cells[0].Text);
Assert.Equal(“GMail”,second.Cells[1].Text);
}
}
Items属性返回第一列的集合文本这里是白色代码
public virtual List<string> Items
{
get
{
return Rows.Select(listViewRow => listViewRow.Cells[0].Text).ToList();
}
}
这也支持使用单元格的索引
listView.Rows[0].Cells[0]
下面是我基于答案的单元测试的示例
void CellText()
{
using (var window = StartScenario("OpenListView", "ListViewWindow"))
{
var listView = window.Get<ListView>("ListView");
ListViewRow first = listView.Rows[0];
Assert.Equal("Search", first.Cells[0].Text);
Assert.Equal("Google", first.Cells[1].Text);
ListViewRow second = listView.Rows[1];
Assert.Equal("Mail", second.Cells[0].Text);
Assert.Equal("GMail", second.Cells[1].Text);
}
}
void CellText()
{
使用(var window=StartScenario(“OpenListView”、“ListViewWindow”))
{
var listView=window.Get(“listView”);
ListViewRow first=listView.Rows[0];
Assert.Equal(“搜索”,第一个.Cells[0].Text);
Assert.Equal(“Google”,first.Cells[1].Text);
ListViewRow second=listView.Rows[1];
Assert.Equal(“邮件”,第二个.Cells[0].Text);
Assert.Equal(“GMail”,second.Cells[1].Text);
}
}
既然您有多个行/col,那么您必须访问整个索引行难道没有意义吗<代码>项[0]。元素位于[0]?@Tdorno。谢谢,我试过了,但是没有达到预期的效果。既然您有多个行/列,那么您必须访问整个索引行难道没有意义吗<代码>项[0]。元素位于[0]?@Tdorno。谢谢,我试过了,但没有达到预期效果。