4
可能重复:
What's the proper way to minimize to tray a C# WinForms app?C#创建一个运行在后台的程序?
我怎样才能创建一个在后台运行,并可以通过Windows的‘通知区域’(如日期和时间进行访问的程序在右下角)?
换句话说,我希望能够创建一个运行的程序,并且可以在显示窗口和没有显示窗口之间切换。
可能重复:
What's the proper way to minimize to tray a C# WinForms app?C#创建一个运行在后台的程序?
我怎样才能创建一个在后台运行,并可以通过Windows的‘通知区域’(如日期和时间进行访问的程序在右下角)?
换句话说,我希望能够创建一个运行的程序,并且可以在显示窗口和没有显示窗口之间切换。
NotifyIcon
和ContextMenuStrip
。设置窗体事件resize
并做以下检查
private void MyForm_Resize(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized) this.Hide();
else this.Show();
}
// you could also restore the window with a
// double click on the notify icon
private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
{
this.Show();
this.WindowState = FormWindowState.Normal;
}
对于一个例子可以下载this project
不用担心右键单击事件,NotifyIcon
will au tomatically detect it and显示ContextMenu
结帐这个答案http://stackoverflow.com/questions/46918/whats-the-proper-way-to-minimize-to-tray-ac-winforms-app/47743#47743在相关的问题。 – 2010-05-25 22:18:37