我正在尝试使Winforms组合框在将新行写入数据库时自动刷新。
POCO EF类别:
public class BaseSweep
{
public int BaseSweepId { get; set; }
//stuff removed for clarity
}
我通过这样的BindingList绑定到数据:
public BindingList<BaseSweep> TopSweeps()
{
LocalDbContext.BaseSweep.Load();
return LocalDbContext.BaseSweep.Local.ToBindingList();
}
private void BindSweepList() //called in Form_Load
{
comboBoxSweepIds.DataSource = _dataAccess.TopSweeps();
comboBoxSweepIds.DisplayMember = "BaseSweepId";
comboBoxSweepIds.ValueMember = "BaseSweepId";
}
这对于初始绑定工作正常,并在表中显示当前ID。随着新行添加到表中,
LocalDbContext.BaseSweep.Local
中的计数将按预期增加。但是,comboBoxSweepIds
从不更新。有什么想法我做错了吗? 最佳答案
您需要触发一个事件,并在每次添加一行时调用绑定。
关于c# - 首先使用Winforms和EF 4.1代码进行数据绑定(bind),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6680853/