private void BuildMenu() { trayIcon.ContextMenu.MenuItems.Clear(); MenuItem menuItemNoComPorts = new MenuItem("No COM Ports found!"); menuItemNoComPorts.Enabled = false; contextMenu = new ContextMenu(new MenuItem[0]); PortManager.Refresh(); if (PortManager.SerialPortNames.Count() > 0) { for (int i = 0; i < PortManager.SerialPortNames.Count(); i++) { contextMenu.MenuItems.Add(new MenuItem(PortManager.SerialPortFriendlyNames[i].ToString())); } } else { contextMenu.MenuItems.Add(menuItemNoComPorts); } contextMenu.MenuItems.Add(new MenuItem("-")); contextMenu.MenuItems.Add(new MenuItem("Refresh", Refresh)); contextMenu.MenuItems.Add(new MenuItem("Exit", Exit)); trayIcon.ContextMenu = contextMenu; }
public MyComPorts() { timer.Interval = 500; timer.Tick += Tick; timer.Start(); contextMenu = new ContextMenu(new MenuItem[] { new MenuItem("Exit", Exit) }); trayIcon = new NotifyIcon() { Icon = Resources.AppIcon, ContextMenu = contextMenu, Visible = true }; PortManager.Refresh(); }
void Refresh(object sender, EventArgs e) { PortManager.Refresh(); BuildMenu(); }