假设有一个List<Person>
Person{Name, age, etc}
。
我想要的是一个ListBox,其中包含所有Person的名称作为项目。 只有细节。我希望它能自动更新。
我想知道是否可以创建一个动态数据源来获取List<Person>
的名称,然后将ListBox
绑定到该数据源。
欢迎使用除数据之外的任何建议。 我发现.net中使用的LinqDataSource 4.类似于.Net3.5的任何内容?
答案 0 :(得分:0)
我相信你正在寻找比这更“重要”的东西,但我不确定你的问题是什么。所以我发布此代码供您进一步解释您的目标。
namespace SO_Forms_Demo
{
public partial class Form1 : Form
{
List<person> people;
public Form1()
{
InitializeComponent();
List<string> dataList = new List<string>(){"Moe","Larry","Curly"};
listBox1.DataSource = dataList;
people = new List<person>(){new person(){name="Moe",age=44,shoeSize=9},
new person(){name="Larry",age=45,shoeSize=10},
new person(){name="Curly",age=46,shoeSize=11}
};
bindList2();
}
private void button1_Click(object sender, EventArgs e)
{
person Shemp = new person() { name = "Shemp", age = 49, shoeSize = 12 };
people.Add(Shemp);
bindList2();
}
private void bindList2()
{
listBox2.DataSource = null;
listBox2.DisplayMember = "name";
listBox2.DataSource = people;
}
}
public class person
{
public string name { get; set; }
public int age { get; set; }
public int shoeSize { get; set; }
}
}