0

我有一个 C# .Net 3.5,winform(显示图形),需要作为前屏幕保持打开状态。datagridview RowEnter我在调用窗口的事件期间刷新图表。我将图形 winform 打开为show(),然后使用TopMost = true. 在我打开另一个应用程序(如 Word)之前,一切正常;图形窗口仍然保留在 Word 的前面。

当我的应用程序顶部打开另一个应用程序时,当我可以关闭打开的图形屏幕时,是否会触发应用程序事件。或者,如果您对不同的方法有任何建议,请告诉我。

4

3 回答 3

0

对不起,但我无法理解你的问题。您设置TopMost=true了,下一刻您希望它隐藏在另一个应用程序后面...... ????

于 2013-04-11T04:19:08.447 回答
0

查看Form.Deactivate Event。当表单失去焦点并且不再是活动表单时会引发它。您可以使用此事件关闭表单

于 2013-04-11T04:20:01.700 回答
0

考虑到登录表单名称是loginForm ,这种解决方法是 100% 工作的。

  1. 只需创建以下方法:

    private void hideLogin()
    {
        if (System.Windows.Forms.Application.OpenForms["loginForm"] != null)
        {
            System.Windows.Forms.Application.OpenForms["loginForm"].Hide();
        }
    }
    
  2. 通过任务调用此方法:

    Task HideLoginTask = new Task(hideLogin); 
    HideLoginTask.Start();
    
于 2021-10-13T02:02:58.007 回答