private string[] path;
private List<long> file=new List<long>();
private void btnsee_Click(object sender, EventArgs e)
{
     path = Directory.GetFiles(@"C:\Program Files\360Safebox\icon");
     int i = 0;
     foreach (string s in path)
     {
          FileInfo m = new FileInfo(s);
          this.listView1.Items.Add(new ListViewItem(s, i));
          listView1.Items[i++].SubItems.Add(m.Length.ToString() + " Bytes");
     }
}
运行以后发现listview的subitem里面好多是空的,没加入内容,而有些则有。而调试发现数组path里面的都是正确的。这是什么原因,要怎么解决呢?

解决方案 »

  1.   

    要把图标的长度放入什么地方啊 ,好像有个 System.ArgumentOutOfRangeException 的问题,超出范围了,不如把长度直接加在路径名后面就行了,简单,不知道效果是不是想要的啊
     FileInfo m = new FileInfo(s);
                    this.listView1.Items.Add(s +"     "+ m.Length.ToString() + " Bytes");
                                    i++;
      

  2.   

    我用了双重循环解决的,Item和SubItem不能放一个循环实现。