我在主窗体的 OnShow
事件中有一些内容,它使用过程 StuffLB
填充了一些列表框。在通过调用 ShowModal
显示任何其他表单后,我需要重新填充这些列表框。
这样的模态窗体关闭后,主窗体将在模态窗体所在的位置重新绘制,并且其 OnShow
事件不会触发。
触发 OnShow
事件的唯一方法是:
frmM.Hide;
frmB.ShowModal;
frmM.Show;
在子表单上的每次 ShowModal
调用之后,填充列表框以使用 StuffLB
调用是唯一的方法吗?我大约有 25 份表格可供使用。
我本来希望 OnShow 表示它再次显示的时间,无论是部分还是全部。
如果有任何帮助或建议,我将不胜感激。
最佳答案
OnShow
事件在表单可见时触发。您可以使用 OnActivate
事件。但是,由于您的代码调用了另一种表单的 ShowModal
,因此只需将所需的代码放入单独的方法中,并在此处和 FormShow
中调用即可。
关于winforms - 为什么主窗体的 OnShow 不触发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15441676/