2012-08-06 65 views
0

我无法将List<>发送到文本框,我不确定问题所在。我已经检查过,所以List实际上具有值,并且它从类中正确地转移到这个块中。我想在列表框中显示列表

代码:

public void Listtest(List<string> m_customers) 
    { 
     lstRegistry.Items.Clear(); 


     for (int index = 0; index == m_customers.Count; index++) 
     { 
      lstRegistry.Items.Add(m_customers[index]); 
     } 
    } 

正在发送List<>

 class CustomManager 
{ 
    //private List<Customer> m_customers; 
    List<string> m_customers = new List<string>();   

    public void CreateNewString(string adresslist, string emaillist, string phonelist, string namelist) 
    { 
     MainForm strIn = new MainForm(); 
     string newlist = string.Format("{0,-3} {1, -10} {2, -20} {3, -30}", namelist, phonelist, emaillist, adresslist);   
     m_customers.Add(newlist); //líst is created. 
     strIn.Listtest(m_customers);   
    } 
} 

我只是不能得到它的工作,我很坚持的其他类。 :/

感谢您的任何和所有帮助和想法!

//问候

回答

9

改变循环条件:index < m_customers.Count

编辑 你也可能想创建一个类这样的数据:

class Person 
{ 
    public string Name {get; set;} 
    public string Address {get; set;} 
    public string Email {get; set;} 
} 

这样就可以使一个人名单:List<Person>

2

Erno的回答守ld照顾你的问题,但我也建议你阅读foreach。使用这将改变从您的代码:

for (int index = 0; index < m_customers.Count; index++) 
    { 
     lstRegistry.Items.Add(m_customers[index]); 
    } 

foreach (string cust in m_customers) 
    { 
     lstRegistry.Items.Add(cust); 
    } 

这我认为是更容易阅读。