我使用c#手动将通知图标添加到基于表单的应用程序的任务栏。菜单添加正常,但是当我右键单击图标时,列表将显示在任务栏下方作为默认值。如何让它出现在您通常期望的位置?
NotifyIcon notfiyIcon = new NotifyIcon();
ContextMenu contextMenu = new ContextMenu();
MenuItem menuItem = new MenuItem();
menuItem.Text = "Exit";
menuItem.Click += new System.EventHandler(this.btnLogOut_Click);
contextMenu.MenuItems.Add(menuItem);
contextMenu.MenuItems.Add("hello");
notfiyIcon.ContextMenu = contextMenu;
notfiyIcon.Text = "Property Sales";
Icon icon = new Icon("icon.ico");
notfiyIcon.Icon = icon;
notfiyIcon.Visible = true;
这就是我希望它出现的地方。
答案 0 :(得分:2)
这是Windows上下文菜单的预期行为。
通常,上下文菜单从鼠标位置向下打开,这是您在第一个屏幕截图中看到的。在第二个屏幕截图中,上下文菜单太高而无法向下打开(它会从屏幕延伸出来),因此它会从鼠标位置向上打开,以便完全可见。
您可以手动设置菜单位置,但为了保持一致,不建议使用。