2013-05-04 6 views
1

xml 파일을 읽고, 개체 목록에 xml 파일의 데이터를 저장하는 Windows 양식이 있습니다. 개체 목록에서 목록 상자 채우기

<SalesmanDetails> 
    <firstName>as</firstName> 
    <surname>s</surname> 
    <email>[email protected]</email> 
    <dateOfBirth>01/01/1980</dateOfBirth> 
    <streetNameAndNumber>23 st </streetNameAndNumber> 
    <city>random</city> 
    <country>Australia</country> 
    <sales>1000</sales> 
    <mobilePhoneNumber>+254 123 123 123</mobilePhoneNumber> 
    <officeNumber>+65 852 256 5698</officeNumber> 
    </SalesmanDetails> 

사용자가 XML 파일에있는 모든 사람들의 "보기"버튼의 firstName과 성을 클릭

이 목록 상자에 나타납니다 : 이 XML 파일 형식입니다.

private void btnViewAll_Click(object sender, EventArgs e) 
     { 
      listBox1.Items.Clear(); 
      foreach (SalesmanDetails details in salesmanList) 
      { 
       listBox1.Items.Add(details.firstName +" "+ details.surname); 
      } 
     } 

사용자를 두 번 클릭이 목록 상자에있는 이름 중 하나가, 그 사람의 모든 세부 사항을 가진 메시지 박스가 표시됩니다

내가 지금까지 가지고있는 방법이다. 어떻게해야합니까?

+0

내가 여기에 잘못 할 수도 있지만 다음 코드 샘플입니다), 그리고 ListBox = salesmanlist (listBox1.Datasource = salesmanList)의 데이터 소스를 설정하십시오. –

+0

열려있는 파일 방법이 목록에 정보를 추가하지 않는다는 것을 깨달았습니다. – Pindo

답변

4

루프에서 ListBoxItem을 추가하는 동안 String.Format을 사용하여 이름과 성을 연결할 수 있습니다. DoubleClick에서 SalesmanDetails를 찾아 세부 사항을 표시하려면 listbox DoubleClick 이벤트를 사용할 수 있습니다. 있으며, toString에 반환되는() 메소드, SalesmanDetails.firstName + ""+ SalesmanDetails.surname와 (당신의 SalesmanDetails 클래스에서 toString() 메소드를 오버라이드 (override) :

private void btnViewAll_Click(object sender, EventArgs e) 
    { 
     listBox1.Items.Clear(); 
     foreach (SalesmanDetails details in salesmanList) 
     { 
      listBox1.Items.Add(String.Format("{0} {1}",details.firstName,details.surname)); 
     } 
    } 

    private void listBox1_DoubleClick(object sender, EventArgs e) 
    { 
     int SalesmanDetailsIndex = listBox1.SelectedIndex; 
     SalesmanDetails selectedSalesman=salesmanList[SalesmanDetailsIndex]; 
     MessageBox.Show(String.Format("{0} {1} email {2}",selectedSalesman.firstName,selectedSalesman.surname,selectedSalesman.email)); 
    } 
+0

완벽! 매력처럼 작동합니다. – Pindo

관련 문제