我需要更新动态创建的Form2的ListBox.让我们说在我必须更新这个ListBox的事件中(当然在Form1中)我没有这个Form2的引用所以我不能调用UpdateList方法(不,我不能让它静态) .
我甚至不知道是否有Form2打开,它可能与否.
你有什么建议?
有没有办法循环使用Form2的所有开放性?
代码示例:
//Form1
public void event()
{
//UPDATE FORM2 LISTBOX
}
//SOMEWHERE IN FORM1
Form2 runTime = new Form2();
//Form2
public void UpdateList()
{
//UPDATE LISTBOX
}
Run Code Online (Sandbox Code Playgroud)
我不确定你到底想要实现什么.但在我看来,你可以迭代打开的表单集合:
var formsList = Application.OpenForms.OfType<Form2>();
listBox.Items.AddRange(formsList.Select(f=>f.Text).ToArray());
Run Code Online (Sandbox Code Playgroud)
这一行将为您提供应用程序中所有打开的Form2实例的IEnumerable.您可能希望使用自己的字符串表示形式(而不是上面代码段中使用的表单标题)
| 归档时间: |
|
| 查看次数: |
2238 次 |
| 最近记录: |