我正在编写一个C#Windows窗体应用程序。如何隐藏表单,同时在Windows taskbar?
中保持活动状态我尝试将Visible
属性设置为false并使用Hide()
方法,但它们隐藏了表单和任务栏条目。
我还尝试通过在WindowState
和FormWindowState.Minimized
事件中将OnLoad
设置为onResize
来永久地最小化应用程序。这非常有效,但是当您左键单击任务栏中的图标时,您会在调整大小之前快速刷新应用程序(这有点烦人)。
很抱歉,如果之前出现过此问题,但到目前为止我看到的每个问题都会完全隐藏任务栏,或者将应用程序作为任务栏项删除(由NotifyIcon
替换。)< / p>
如何解决此问题?
答案 0 :(得分:4)
设置
FormBorderStyle = None
&安培;在加载事件中:
private void Form1_Load(object sender, EventArgs e)
{
this.Size = new System.Drawing.Size(0, 0);
}
答案 1 :(得分:3)
正如dequadin所提到的,你正在使用的范例可能证明了通知图标的合理性。任务栏专门用于最小化窗口(以及Win7,应用程序启动)。所有其他建议(形式不透明,在屏幕外移动窗口等)都会落在Win7上的Aero Peek。
如果你的应用程序主要是一个后台任务,偶尔需要用户界面和按需进行用户交互,那么正确的技术就是系统通知区域(又称托盘)。在.NET WinForms中,这将是NotifyIcon控件。