こんにちは。
Windows10でWindows Formのアプリケーションを開発しています。
Visual Studio 2015 Communityを使っています。
###前提・実現したいこと
タスクトレイに常駐したアイコンをクリックして、メインフォームの表示/非表示を切り替えたいと考えました。
###発生している問題・エラーメッセージ
ところが、Hide()すると、非表示になるのではなく、ウィンドウを閉じてしまいます。
非表示にする方法を教えてください。
###該当のソースコード
C#
1 public void SetTaskTray() { 2 //タスクバーに表示しない 3 ShowInTaskbar = false; 4 5 //タスクトレイアイコンを初期化する 6 notifyIcon = new System.Windows.Forms.NotifyIcon(); 7 8 //タスクトレイに表示する 9 notifyIcon.Visible = true; 10 11 //アイコンにコンテキストメニュー「終了」を追加する 12 var menuStrip = new System.Windows.Forms.ContextMenuStrip(); 13 14 var exit = new System.Windows.Forms.ToolStripMenuItem(); 15 exit.Text = "終了"; 16 menuStrip.Items.Add(exit); 17 exit.Click += new System.EventHandler(OnExit); 18 19 //ContextMenuを登録する。 20 notifyIcon.ContextMenuStrip = menuStrip; 21 22 //タスクトレイアイコンにクリックイベントハンドラを登録する 23 notifyIcon.MouseClick += new System.Windows.Forms.MouseEventHandler(OnNotifyIconClick); 24 } 25 26 27 bool IsShown = true; 28 private void OnNotifyIconClick(object sender, System.Windows.Forms.MouseEventArgs e) { 29 try { 30 if (e.Button == System.Windows.Forms.MouseButtons.Left) { 31 if (IsShown) { 32 //this.Hide(); 33 IsShown = false; 34 } 35 //ウィンドウを可視化 36 else { 37 this.Show(); 38 IsShown = true; 39 } 40 } 41 } 42 catch(Exception exception) { 43 string error = exception.Message; 44 } 45 } 46
###補足情報(言語/FW/ツール等のバージョンなど)
Microsoft Visual Studio Community 2015
Version 14.0.25424.00 Update 3
Microsoft .NET Framework
Version 4.6.01038
インストールしているバージョン:Community
Visual C# 2015 00322-20000-00000-AA575
Microsoft Visual C# 2015
です。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/18 14:24
2017/02/18 14:43