我使用此代码将数据从数据库加载到组合框
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
comboBox1.DataSource = Dbcontext.Products.Tolist();
comboBox1.DisplayMember = "ProductName";
comboBox1.ValueMember = "ID";
}
当我在同一个项目中从另一个windowsForm添加新产品时,当我回来从组合框中选择值时,我无法找到它。而这次刷新不会起作用
privatevoid ComboBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{ ComboBox1.Refresh()
}
我该怎么做?谢谢
答案 0 :(得分:1)
答案 1 :(得分:0)
您可以尝试使用ComboBox1.UpdateLayout()方法。
答案 2 :(得分:0)
当您从该屏幕移动到此屏幕时,您需要重新填充comboBox1。
您的组合框数据源不包含新添加的项目。 " Dbcontext.Products.Tolist()"填充当前产品但不绑定以获取新添加的产品。
您需要手动执行该操作。 像这样在当前窗口上调用方法
void RefreshData()
{
comboBox1.DataSource = null;
comboBox1.DataSource = Dbcontext.Products.Tolist();
}