2013-03-01 4 views
1

Имя файла - contacts.txt. Его содержание:Как добавить содержимое файла в listview C#

line 1: Adam 
line 2: [email protected] 
line 3: Kris 
line 4: [email protected] 

У меня есть ListView с именем listview1. Он имеет 2 колонки, ColumnHeader1 & ColumnHeader2

Я хочу, чтобы добавить имя в файле, ColumnHeader1 и электронной почте ColumnHeader2, то есть, как:

Adam [email protected] 
Kris [email protected] 

Как я могу это сделать?

Кроме того, я хочу, чтобы это происходило автоматически каждый раз, когда форма загружается.

Благодарю вас заранее.

Пробовал это.

using (StreamReader sr = new StreamReader(@"C:\Contacts.txt")) 
{ 
    while (sr.EndOfStream) 
    { 
     ListViewItem lvi = new ListViewItem(sr.ReadLine()); 
     lvi.SubItems.Add(sr.ReadLine()); 
     listView1.Items.Add(lvi); 
     continue; 
    } 
    sr.Close(); 
} 
+0

Ответ Пожалуйста. Как я могу загрузить список, загруженный с элементами в форме –

+0

Мне просто нужно было использовать! in while loop все остальное отлично работает –

ответ

1

Вывести слово continue. Это не обязательно.

попробовать что-то вроде этого:

using (StreamReader sr = new StreamReader(@"C:\Contacts.txt")) 
{ 
    while (-1 < sr.Peek()) 
    { 
    try 
    { 
     string name = sr.ReadLine(); 
     string email = sr.ReadLine(); 
     var lvi = new ListViewItem(name); 
     lvi.SubItems.Add(email); 
     listView1.Items.Add(lvi); 
    } catch (Exception) { } 
    } 
    sr.Close(); 
} 

Это try/catch есть только в случае, если не четное количество записей в файле.

+0

Мне просто пришлось использовать! в цикле while. , но все же, как я могу сделать listview загруженным с пунктами automaticlly на заполненную форму –

+0

Двойной щелчок вашей формы из представления дизайнера. Это создаст событие Form_Load и поместит его в вашу форму (если оно еще не существует). Затем просто поместите код внутри этой процедуры. – jp2code

+1

какой тупик я. забыл основную вещь. Спасибо большое. –

Смежные вопросы