我们说{我有一个List<Person> people
,其中Person
是一个包含三个字符串的类:Name
,Surname
和Age
。我还有六个动态创建的TextBox
控件,这些控件放在Panel
控件上,并使用for
循环为其分配了名称。以及为所述TextChanged
控件动态创建的TextBox
事件。目前,List
包含两个条目people.Add(new Person { Name = John, Surname = Johnson, Age = 25 });
和people.Add(new Person { Name = Jack, Surname = Jackson, Age = 30 });
。我需要用户能够通过在相应的List<Person>
中输入文本来更改这些Textbox
条目。因此,第一个TextBox
更改了people[0].Name
,第二个 - people[0].Surname
,第三个 - people[0].Age
,第四个 - people[1].Name
,依此类推......
答案 0 :(得分:0)
看看textbox标签属性,它应该在这里帮助你。 https://msdn.microsoft.com/en-us/library/system.windows.forms.control.tag(v=vs.110).aspx
您将person对象存储在标记中,然后在更新该文本框时,您可以更新标记对象,然后标记对象将为您更新列表。您需要一种方法来告诉文本框是什么(名字,姓氏年龄等),这可以通过其名称来实现。
更好的方法是做一个自定义控件,其中所有文本框都是预构建等,但有时我理解需要动态构建UI。