wpf编程: 当关闭主窗口的时候 系统托盘的图标无法自动消失, 需要把鼠标给移动到上面才能消失。
怎么让其 自动消失啊。Wpf 工程中添加如下一个 组件:SystemTray.cs
这个组件有如下2个控件:
1. NotifyIcon ni_Main
2. ContextMenuScript cms_SystemTray
上下文菜单有2个子菜单:this.cms_SystemTray.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsmi_Open,
this.tsmi_Exit});事件分别是:
private void OpenMainWindow()
{
MainWindow win = (MainWindow)(System.Windows.Application.Current.Windows[0]);
if (win.WindowState == System.Windows.WindowState.Minimized)
{
win.WindowState = System.Windows.WindowState.Normal;
win.Show();
win.Activate();
win.ShowInTaskbar = true;
}
}
private void tsmi_Exit_Click(object sender, EventArgs e)
{
////用这个方法关闭的时候 可以 让系统托盘的图标自动消失 System.Windows.Application.Current.Shutdown();
} private void ni_Main_DoubleClick(object sender, EventArgs e)
{
this.OpenMainWindow();
}
窗口主程序 包括2个按钮:private void btn_Close_Click(object sender, RoutedEventArgs e)
{ //用这个方法关闭的时候 无法 让系统托盘的图标自动消失
System.Windows.Application.Current.Shutdown();
}
private void btn_Min_Click(object sender, RoutedEventArgs e)
{
this.WindowState = System.Windows.WindowState.Minimized;
this.ShowInTaskbar = false;
}
private SystemTray st;
//MainWindow的构造函数:
public MainWindow()
{
InitializeComponent();
//初始化组件。
st = new SystemTray();
}
我该如何去解决? 谢谢了。
怎么让其 自动消失啊。Wpf 工程中添加如下一个 组件:SystemTray.cs
这个组件有如下2个控件:
1. NotifyIcon ni_Main
2. ContextMenuScript cms_SystemTray
上下文菜单有2个子菜单:this.cms_SystemTray.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsmi_Open,
this.tsmi_Exit});事件分别是:
private void OpenMainWindow()
{
MainWindow win = (MainWindow)(System.Windows.Application.Current.Windows[0]);
if (win.WindowState == System.Windows.WindowState.Minimized)
{
win.WindowState = System.Windows.WindowState.Normal;
win.Show();
win.Activate();
win.ShowInTaskbar = true;
}
}
private void tsmi_Exit_Click(object sender, EventArgs e)
{
////用这个方法关闭的时候 可以 让系统托盘的图标自动消失 System.Windows.Application.Current.Shutdown();
} private void ni_Main_DoubleClick(object sender, EventArgs e)
{
this.OpenMainWindow();
}
窗口主程序 包括2个按钮:private void btn_Close_Click(object sender, RoutedEventArgs e)
{ //用这个方法关闭的时候 无法 让系统托盘的图标自动消失
System.Windows.Application.Current.Shutdown();
}
private void btn_Min_Click(object sender, RoutedEventArgs e)
{
this.WindowState = System.Windows.WindowState.Minimized;
this.ShowInTaskbar = false;
}
private SystemTray st;
//MainWindow的构造函数:
public MainWindow()
{
InitializeComponent();
//初始化组件。
st = new SystemTray();
}
我该如何去解决? 谢谢了。
多年没用过托盘图标了,不知现在有没有改变。
{
InitializeComponent();
//初始化组件。
st = new SystemTray(this.components);
}
{
NotifyIcon.Dispose()
}