我有一个应用程序,可以使用Form显示窗口。只有在使用-debug标志运行应用程序时,该表单才会显示,否则它仅会显示在托盘中。
应用程序在调试模式下运行时,会在窗体显示时监听CloseMainWindow()。如何使应用程序在不显示窗体的情况下也监听CloseMainWindow()呢?如果不处于调试模式,我不希望用户能够与窗体交互。
我尝试过几种方法,比如显示窗口但将大小设置为0。这会显示一个小窗体,即不是隐藏的窗体。
也不能通过显示再隐藏来解决问题:
我是否漏了什么非常明显的东西,或者关闭最小化到托盘的进程不可能以一种优雅的方式?
var form = new Form();
if(DebugMode)
form.Show();
应用程序在调试模式下运行时,会在窗体显示时监听CloseMainWindow()。如何使应用程序在不显示窗体的情况下也监听CloseMainWindow()呢?如果不处于调试模式,我不希望用户能够与窗体交互。
我尝试过几种方法,比如显示窗口但将大小设置为0。这会显示一个小窗体,即不是隐藏的窗体。
if (!DebugMode)
{
form.Show();
form.Size = new Size(0, 0);
}
也不能通过显示再隐藏来解决问题:
if (!DebugMode)
{
form.Show();
form.Hide();
}
虽然显示了,但最小化并且不在任务栏中显示也不起作用:
if (!DebugMode)
{
form.Show();
form.WindowState = FormWindowState.Minimized;
form.ShowInTaskbar = false;
}
我是否漏了什么非常明显的东西,或者关闭最小化到托盘的进程不可能以一种优雅的方式?