将对象从列表返回到列表框

时间:2020-01-04 13:01:24

标签: c# string winforms oop listbox

我一直在尝试创建一种将项目添加到列表框中的方法。 有一个类Member,每个Member都属于ProjectGroup。成员具有方法getName(),该方法返回字符串名称。
所以当我尝试添加1个人以上时,就会出现问题。列表框卡在列表中的第一人称上,并且没有新内容出现。代码如下:

public class ProjectGroup
    {
        List<Member> members = new List<Member>();

        public void addMember(string name)
        {
            Member newPerson = new Member(name);

            members.Add(newPerson);
        }

        public string getInfo()
        {
            foreach (Member item in members)
            {
                return item.getName();
            }

            return null;
        }
    }

以及以下形式的代码:

        ProjectGroup group = new ProjectGroup();

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string name = textBox1.Text;

            lbStudents.Items.Clear();
            textBox1.Text = "";

            group.addMember(name);

            lbStudents.Items.Add(group.getInfo());
        }

1 个答案:

答案 0 :(得分:0)

 public List<string> getInfo()
    {
       var result= new List<string>();
        foreach (Member item in members)
        {
          result.Add(item.getName());
        }

        return result;
    }

并进行更改:

lbStudents.Items.AddRange(group.getInfo());