【发布时间】:2010-10-29 12:42:04
【问题描述】:
private void LoadUsersToComboBox()
{
comboBox1.DataSource = null;
comboBox1.DataSource = peopleRepo.FindAllPeople(); /*Returns IQueryable<People>*/
comboBox1.DisplayMember = "Name";
comboBox1.ValueMember = "ID";
}
private void button2_Click(object sender, EventArgs e)
{
CreateNewPerson();
LoadUsersToComboBox();
}
private void CreateNewPerson()
{
if (textBox2.Text != String.Empty)
{
Person user = new Person()
{
Name = textBox2.Text
};
peopleRepo.Add(user);
peopleRepo.Save();
}
}
我希望组合框在每次保存后显示用户列表。因此,有人创建了一个新用户,然后它应该立即显示在组合框中。这不起作用,没有添加新用户,似乎只有初始“加载”有效。
【问题讨论】:
-
三件事 - 1. 你不需要初始的
comboBox1.DataSource = null;2. 对peopleRepo.FindAllPeople();的调用是同步的吗?和 3. 如果您删除对CreateNewPerson();的调用会发生什么?
标签: c# winforms datasource