【发布时间】:2017-06-23 15:06:49
【问题描述】:
我有一个 listView 看起来像这样:
我想在数量列中迭代每个项目。我已经写了一个代码来做到这一点:
foreach (ListViewItem item in listView1.Items)
{
for (int quantity = 1; quantity < (Convert.ToInt32(item.SubItems[1].Text) + 1); quantity++)
{
//do something
}
}
我想知道我是否可以只用一个循环而不是两个循环来做到这一点。
谢谢
【问题讨论】:
-
那么一个循环的总迭代次数仍然相同......当前方法有什么问题?其他优化将取决于
//do something的作用。 -
你想要的结果是什么?
-
您可以使用
Select()方法减少循环嵌套,这实际上会给您一个循环。但是,迭代次数不会减少,我认为不可能 -
@AlexK。是的,我知道,但问题是我的程序有太多循环并且难以遵循。我的大部分循环都依赖于 ListView。
-
我建议您使用 ListView 来显示一些实体。但是如果你需要计算一些东西,那么使用实体而不是使用这些实体绑定到的 UI 控件
标签: c# loops listview iteration