gpt4 book ai didi

c# - 从 C# 中的另一个窗体更新组合框

转载 作者:太空宇宙 更新时间:2023-11-03 21:48:20 25 4
gpt4 key购买 nike

我想从另一个表单更新主表单的组合框这是我在 form_load 中的主表单组合框更新代码

public void main_Load(object sender, EventArgs e)
{
try
{
OleDbDataAdapter db = new OleDbDataAdapter("select * from category", con);
ds_cmbGroup.Clear();
cmbGroup.DataSource = null;
db.Fill(ds_cmbGroup, "t1");
cmbGroup.DisplayMember = "catname";
cmbGroup.ValueMember = "catcode";
cmbGroup.DataSource = ds_cmbGroup.Tables["t1"];
}
catch (Exception ex)
{
}
}

当我以自己的形式调用此方法时,它会正确运行。这是调用它的代码:

main_Load(this, null);

但是当我从另一种形式调用它时,(尽管数据集更新没有问题)它不会改变组合框(cmbGroup)的内容这是从第二种形式加载 main_Load 方法的代码:

main Main = new main();
Main.main_Load(this, null);

提前致谢

最佳答案

问题是您没有引用主窗体的当前实例,而是创建了一个新实例,在第二个窗体上尝试:

 Main  obj = (Main)Application.OpenForms["Main"];

然后用obj引用main Form

关于c# - 从 C# 中的另一个窗体更新组合框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15768012/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com