我有一个应用程序,通过点击“关闭”按钮,使系统托盘最小化,我想保存它的状态(位置,所有元素(组合框,文本框)与他们的值等) 。保存窗口状态,当应用程序在托盘
现在,我写了这个代码,但它创建了一个新的窗口,从托盘(而不是恢复旧的,其参数):
# app.xaml.cs:
this.ShutdownMode = ShutdownMode.OnExplicitShutdown;
// create a system tray icon
var ni = new System.Windows.Forms.NotifyIcon();
ni.Visible = true;
ni.Icon = QuickTranslator.Properties.Resources.MainIcon;
ni.DoubleClick +=
delegate(object sender, EventArgs args)
{
var wnd = new MainWindow();
wnd.Visibility = Visibility.Visible;
};
// set the context menu
ni.ContextMenu = new System.Windows.Forms.ContextMenu(new[]
{
new System.Windows.Forms.MenuItem("About", delegate
{
var uri = new Uri("AboutWindow.xaml", UriKind.Relative);
var wnd = Application.LoadComponent(uri) as Window;
wnd.Visibility = Visibility.Visible;
}),
new System.Windows.Forms.MenuItem("Exit", delegate
{
ni.Visible = false;
this.Shutdown();
})
});
我怎么能修改此代码为我的问题吗?
不要关闭并重新创建窗口,只需隐藏它。 – 2013-04-30 13:51:12
好吧,我做了,但我怎么能从'App.xaml.cs'获得MainWindow实例的恢复窗口? – 2013-04-30 13:54:35