当 select 个不同的标签页时 MessageBox 被隐藏

MessageBox is hidden when select different tab page

我正在为设备和化学物品做一个签入签出系统。 首先,我只为设备设计check-in/checkout。一切正常。 当我点击结帐按钮时,会弹出一个消息框,显示该项目已结帐。

然后我添加化学品,设备列表和化学品列表显示在不同标签页的datagridview中(使用标签控件)。 1) 当我select设备列表点击结帐按钮时,会弹出一个消息框。 2)当我select化学品列表点击结帐按钮时,不会弹出消息框,当前window不可点击。直到我用其他windows覆盖应用,再次点击应用,才能看到弹出的消息框。关闭弹出消息框后,所有功能正常。

弹出消息框代码:

 MessageBox.Show("Item successfully checked out.", "Success");
 DialogResult = DialogResult.OK;
 Close();

编辑

我发现化学列表的数据网格视图以某种方式刷新了里面的所有数据,尽管没有调用代码来刷新数据视图。

其他一些事件 运行 导致 window 没有立即弹出。我面临的问题是 rowprepaint 事件。它总是导致事件 运行 并且 window 仍然聚焦并激活。这就是为什么新的 window 弹出框没有出现的原因。