2013-06-27 3 views
0

나는 여러 줄짜리 텍스트 상자와 listview이있는 C# 응용 프로그램을 만들고 있습니다.텍스트 상자에서 목록보기

텍스트 상자 물건은 다음과 같습니다

John Smith 
Joe Bronstein 
Susan Jones 
Adam Feldman 

목록보기 두 개의 열이 있습니다 DateName을.

지금까지는 현재 날짜를 listview의 날짜 열에 넣을 수 있습니다. 다음으로 이름을 이름 열에 복사해야합니다. listview은 다음과 같아야합니다

Date  Name  
6/27/2013 John Smith 
6/27/2013 Joe Bronstein 
6/27/2013 Susan Jones 
6/27/2013 Adam Feldman 

그래서 내가 어떻게 listview의 각 줄에 Name 컬럼에 textbox의 각 행에서 이름을 복사합니까?

답변

2

이 현재 날짜와 목록보기에 텍스트 상자에서 모든 이름을 추가합니다 :

var date = DateTime.Now.ToShortDateString(); 
foreach (var line in textBox.Lines) 
    listView.Items.Add(new ListViewItem(new string[] { date, line})); 

를 작동하는 방법 :을 우리는 선으로 이름 라인을 반환 TextBox 재산 Lines을 열거하고 있습니다. 각 행에 대해 ListView의 각 열에 대해 문자열 배열로 새 ListViewItem을 작성했습니다. 그런 다음 item이 listView에 추가됩니다.

0

Lazyberezovsky 답이 완벽하게 작동합니다.

그러나 이미 Listview에 항목을 추가하고 이미 Dates을 추가했다는 사실을 알린 후 추가하고 싶다면 (솔직히 의심 스럽지만 그냥 추측합니다). 그런 다음 SubItem을 사용하여 각 행을 새 열에 추가해야합니다. 지금, 당신의 ListViewMultilineTextboxLines숫자로 같은 번호를 Items을 가지고 물론 주어진다.

그래서 코드는 아마 다음과 같을 것이다 :

string[] line = textBox1.Lines; // get all the lines of text from Multiline Textbox 
int i = 0; // index for the array above 
foreach (ListViewItem itm in listView1.Items) // Iterate on each Item of the ListView 
{ 
    itm.SubItems.Add(line[i++]); // Add the line from your textbox to each ListViewItem using the SubItem 
} 

그렇지 않으면 다시 Lazyberezovsky의 대답은 완벽하게 작동하고 문제에 적합한 솔루션.

관련 문제