C# 取消对编码UI测试VSTS 2010中标识WinForm ListView子项的缩放
这是我的listview窗口应用程序代码:-C# 取消对编码UI测试VSTS 2010中标识WinForm ListView子项的缩放,c#,.net,visual-studio,C#,.net,Visual Studio,这是我的listview窗口应用程序代码:- // Create three items and three sets of subitems for each item. ListViewItem item1 = new ListViewItem("item1", 0); item1.SubItems.Add("1"); item1.SubItems.Add("2"); item1.SubItems.Add("3");
// Create three items and three sets of subitems for each item.
ListViewItem item1 = new ListViewItem("item1", 0);
item1.SubItems.Add("1");
item1.SubItems.Add("2");
item1.SubItems.Add("3");
ListViewItem item2 = new ListViewItem("item2", 1);
item2.SubItems.Add("4");
item2.SubItems.Add("5");
item2.SubItems.Add("6");
ListViewItem item3 = new ListViewItem("item3", 0);
// Place a check mark next to the item.
item3.Checked = true;
item3.SubItems.Add("7");
item3.SubItems.Add("8");
item3.SubItems.Add("9");
// Create columns for the items and subitems.
// Width of -2 indicates auto-size.
listView1.Columns.Add("Item Column", 100, HorizontalAlignment.Left);
listView1.Columns.Add("Column 2", 100, HorizontalAlignment.Left);
listView1.Columns.Add("Column 3", 100, HorizontalAlignment.Left);
listView1.Columns.Add("Column 4", 100, HorizontalAlignment.Center);
//Add the items to the ListView.
listView1.Items.AddRange(new ListViewItem[] { item1, item2, item3 });
然后在编码UI测试中添加lisview控件:-
在编码的UI测试中,我使用了以下代码
WinList wkList = this.UIForm1Window.UIListView1Window.UIListView1List;
string[] strVal = CommonExtensions.GetValuesOfControls(wkList.Items);
foreach(WinControl control in this.UIForm1Window.UIListView1Window.UIListView1List.Items)
{
int count = control.GetChildren().Count;
object objVal = CommonExtensions.GetValue(control);
WinListItem lstItem = (WinListItem)objVal;
}
in the "strVal " variable gives only values of first column not the subitems.
in add watch window i get below mentioned value:-
strVal[0] = "item1"
strVal[1] = "item2"
strVal[2] = "item3"
我还使用了
在上面的语句中,我得到了无效的Io预期,声明“传递的控件不是列表视图项控件。此操作仅对列表视图项控件有效。”
请推荐其他选择?我通常使用smth,如下所示:
WinList list;
UITestControlCollection columns = websitesList.Columns; // Get Columns names
// Get values
foreach (WinControl item in list.Items)
{
WinListItem listItem = new WinListItem(item);
string[] subItems = WinExtensions.GetColumnValues(listItem); // So you get value = subitem[i] in column[i]
}
看起来你只是希望你从互联网上下载的一些随机代码能够完成你的工作。这在实践中很少奏效。把它扔掉,写你自己的代码。
WinList list;
UITestControlCollection columns = websitesList.Columns; // Get Columns names
// Get values
foreach (WinControl item in list.Items)
{
WinListItem listItem = new WinListItem(item);
string[] subItems = WinExtensions.GetColumnValues(listItem); // So you get value = subitem[i] in column[i]
}