如何以另一个打开的形式将字符串添加到列表框?

时间:2019-06-20 04:48:16

标签: c# winforms

我正在尝试将frmAddSegment中的字符串添加到frmMain中的列表框中。出于某种原因,不会将字符串添加到列表框中,因此frmMain是打开的。

我已经检查过要使用消息框添加列表框的字符串,并且该字符串工作正常,只是没有进入lsitbox。列表框上的Modifyer属性也已设置为public

frmMain fmain = new frmMain();
    fmain.lstbxSegments.Items.Add(segmentPBMin.ToString()+":"+segmentPBMin.ToString()+"."+segmentPBMils);

我希望列表框包含一个新项目,但是它保持空白。

1 个答案:

答案 0 :(得分:1)

  

frmMain fmain =新的frmMain();

您正在创建“ frmMain”的全新实例,并将您的商品添加到该那个实例,而不是当前正在运行的实例。您应该改为:

the_Form_That_Is_Open_Right_Now.lstbxSegments.Items.Add(... your code here);

如果找不到表单的创建位置,可以按Ctrl + F,确保将过滤器设置为“整个解决方案”,然后搜索new frmMain()。您可能会看到类似以下的内容:

Application.Run(new frmMain());

您可以将该实例存储在这样的变量中:

frmMain yourForm = new frmMain(); 
Application.Run(yourForm);