【发布时间】:2012-05-21 03:45:20
【问题描述】:
我有两种形式:form1 和form 2。comboBox 在form2 中。我正在尝试将一个项目添加到 form1 的组合框选项列表中。这是我迄今为止尝试过的。
form1:
var form2 = new Form2();
if (variable == "value") {
form2.Controls["ComboBox1"].Items.Add("another item")
}
this.Hide();
form2.Show;
这个问题是它不允许我选择项目。 (它不允许我输入 .Items.Add)
我还尝试通过在表单中单击组合框并将私有更改为公共来公开组合框。这就是我改变它时的样子。
public void comboBox1_SelectedIndexChanged(object sender, EventArgs e){
}
但是当我尝试访问comboBox1 时,我得到的只是:
comboBox1_SelectedIndexChanged
form2.comboBox1 //This doesn't work
form2.comboBox1_SelectedIndexChanged //This is the only option available
我可能犯了很多错误,但那是因为我是新手。我刚开始学习,所以如果你能试着简单地解释一下,那会有所帮助。如果可能,请避免 get{} set{} 事情。请向我解释如何以不同的形式公开按钮和其他内容,因为我知道单击它并将私有更改为公开并不是我在上面示例中所做的正确方法。
【问题讨论】:
-
这是作业吗?我发誓我两天前在 VB.Net 中看到了同样的问题……我什至记得我要回答建议对两个组合框使用相同的 SelectedIndexChanged 事件。它实际上与@TuTran 的答案相同,除了在两个表单构造函数上,您将为两个 ComboBoxes SelectedIndexChange 事件分配单个 EventHandler...