zoukankan      html  css  js  c++  java
  • C#开发-ListView.CheckedItems的效率

    看一段代码:

    StringCollection arr = new StringCollection();
                
    for (int i=0;i<=lvwExtents.CheckedItems-1;i++)
                {
                    arr.Add(lvwExtents.CheckedItems[i].Text);
                }

    看上去没什么问题。可是今天我运行时,发现速度缓慢得像蜗牛一般。我的ListView有两千多条记录,全部处于选中状态。速度无法忍受,估计秒种处理的记录只有两三条。

    可是换成了以下代码后,就完全正常了,飞快的就执行完了。
    ListViewItem item;
                
    for (int i=0;i<=this.lvwExtents.Items.Count-1;i++)
                {
                    item 
    = this.lvwExtents.Items[i];
                    
    if (item.Checked)
                        arr.Add(item.Text);
                }

    奇怪吧。也许是因为每次循环时调用的lvwExtents.CheckedItems[i].Text代码,都会重新检测哪些项处于选中的状态的缘故吧。
  • 相关阅读:
    继承作业0920
    类与对象
    类和对象基础题
    类和对象数组
    数组
    字符串
    2.1面向对象
    7.1 Java集合概述
    Java动态代理的两种实现方法
    18.5.2动态代理和AOP
  • 原文地址:https://www.cnblogs.com/watsonyin/p/548197.html
Copyright © 2011-2022 走看看