使用分隔符在VB中保存listview的列

时间:2014-03-25 20:48:17

标签: vb.net

所以我有一个列表视图,它有两列。列表视图视图是详细信息。

我已成功将文件导入列表视图并进行了正确的拆分。我使用的代码是,

Using sr As StreamReader = File.OpenText( file path ) While (-1 < sr.Peek()) Dim line As String = sr.ReadLine() Dim item As New ListViewItem(line.Split(":"c)) ListView1.Items.Add(item) End While sr.Close() End Using

所以这会将我的文件中的行导入到正确的列中,其中:as split。 现在我也有一个选项让用户以相同的方式将我的程序中的数据添加到文件中,我使用了这段代码,

     Using sw As StreamWriter = File.AppendText(file path)
    For Each item As ListViewItem in ListView1
      Dim line As String = Nothing
      For Each entry As String in item.SubItems
        line.Append(entry & ":")
      Next For
      sw.WriteLine(line)
    Next For
    sw.Close()
  End Using

取自:Separating text from .txt into colums in listview (VB.net mobile) 但是我的坏,vb给出了这个错误,

  

错误1表达式的类型是System.Windows.Forms.ListView&#39;,它不是集合类型。 C:\ Users \ xxxx \ documents \ visual studio 2012 \ xxxxx \ Form1.vb 97

我不知道为什么我会收到此错误,是因为我的列表视图属性?

我希望能够在用户点击按钮时将数据保存到文本文件中。

1 个答案:

答案 0 :(得分:1)

这一行:

For Each item As ListViewItem in ListView1

应该是这样的:

For Each item As ListViewItem in ListView1.Items

和这一行:

For Each entry As String in item.SubItems

应该是这样的:

For Each entry As ListViewItem.ListViewSubItem in item.SubItems

然后从子项的Text属性中获取一个String。