2013-05-03 259 views
-1

我有寫listView到txt的問題,我的代碼寫入到txt的所有列(第一和第二)。 我有這樣的代碼:C#寫listView到txt?

 using (StreamWriter sw = new StreamWriter("databaseEN.txt")) 
     { 
      foreach (ListViewItem item in listView1.Items) 
      { 
       sw.WriteLine(item.Text); 
       for (int i = 1; i < item.SubItems.Count; i++) 
       { 
        sw.WriteLine(item.SubItems[i].Text); 
       } 
      } 
     } 

我需要寫的第一列並不是所有列到我的TXT,如何改變呢?

回答

-1

刪除此行:

for (int i = 1; i < item.SubItems.Count; i++) 
{ 
    sw.WriteLine(item.SubItems[i].Text); 
} 

編輯:從這裏http://msdn.microsoft.com/en-us/library/aa983553(v=vs.71).aspx

提取的Windows窗體ListView控件可以顯示更多的文字,或 子項,每個項目的詳細信息視圖。 第一列顯示 項目文本,例如員工編號。第二,三和 後續列顯示第一個,第二個和後續 關聯的子項目。

+0

-1。這將防止所有列被寫入,但不解釋如何只寫第一列。 – gunr2171 2013-05-03 18:44:46

+0

查看編輯並瞭解原因:P – Blau 2013-05-04 06:53:38

1

A ListViewItem包含許多SubItems,您可以從item變量中訪問該變量。

item.SubItems[0].Text; 

這將只獲得第一列。您也可以將一個列名稱指定爲一個字符串。

+0

非常感謝,問題解決了。 – user2323554 2013-05-03 18:42:33

+0

如果這有助於您解決問題,則應將此標記爲已回答。 – 2013-05-03 18:49:03

+0

這是錯誤的,第一個子項是第二列。這是解釋它的鏈接。 http://msdn.microsoft.com/en-us/library/aa983553(v=vs.71).aspx – Blau 2013-05-04 06:57:54