从另一个类调用时填充组合框

本文关键字:填充 组合 调用 另一个 | 更新日期: 2023-09-27 17:54:05

我是c#的新手,当从另一个类调用方法时,我有一个填充组合框的问题。我的来源是这样的

类1

private void btn_login_Click(object sender, EventArgs e)
{
    UserControl1 uc1 = new UserControl1();
    uc1.fill_cbb();
}
二班

public void fill_cbb()
{
    cbb_table.Items.Add("Text1");
    cbb_table.Items.Add("Text2");
    cbb_table.SelectedIndex = 0;
}

当我这样做的时候,组合框是空的

从另一个类调用时填充组合框

如果是Asp,请注意事件IsPostBack

您的问题是没有从另一个类调用方法。我假设UserControl1是您的自定义用户控件,而您提到的"类2"是UserControl1。

代码可以正常工作,但是您在该控件的错误实例上调用了它。

在btn_login_Click方法中,您正在生成一个全新的UserControl1实例。您当然可以这样做,这就是为什么Visual Studio永远不会将其标记为错误,但是uc1将不会是实际位于表单中的控件。

假设在你的表单中你已经将控件命名为"cbxOptions"。然后在按钮点击事件中,你需要写

cbxOptions.fill_cbb ();

,如果该组合框也是UserControl1类型。那么它应该可以正常工作。

警告,汽车类比:这就像你想给你的车重新喷漆一样。然后你买了一辆相同型号的新车,把它带到油漆店,给它上漆,然后把它带到垃圾场,把它碾碎。你的旧车当然还是原来的颜色。