hm,
vielleicht verstehe ich mal wieder die frage net ganz, aber wieso verwendest du nicht einfacht die show/hide methoden deiner
entsprechenden control ? natürlich ginge es auch ohne form, aber die sinnhaftigkeit eines programms, welches wirklich garkeine
usereingaben ermöglicht, wage ich zu bezweifeln. ich würde mir einfach ein WinForms/WPF Projekt erstellen, das fenster verstecken
und nur ein trayicon anzeigen. die paar kb speicher für ein fenster schaden heute keinem rechner mehr
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47:
| using System; using System.Windows.Forms;
namespace WindowsFormsApplication1 { public partial class Form1 : Form { private NotifyIcon _myTrayIcon;
public Form1() { InitializeComponent(); _myTrayIcon = new NotifyIcon(); _myTrayIcon.Icon = ((System.Drawing.Icon)(WindowsFormsApplication1.Properties.Resources.colorselector)); _myTrayIcon.Text = "Show/Hide"; _myTrayIcon.Visible = true; _myTrayIcon.ContextMenu = _getMenu(); }
private ContextMenu _getMenu() { ContextMenu outp = new ContextMenu(); MenuItem show = new MenuItem(); MenuItem hide = new MenuItem();
show.Text = "Zeige Fenster"; show.Click += new EventHandler(_showWindow); hide.Text = "Verstecke Fenster"; hide.Click += new EventHandler(_hideWindow);
outp.MenuItems.Add(show); outp.MenuItems.Add(hide);
return outp; }
private void _showWindow(object sender, EventArgs e) { Show(); }
private void _hideWindow(object sender, EventArgs e) { Hide(); } } } |
edit :
WindowsFormsApplication1.Properties.Resources.colorselector ist ein kleines icon für die traybar