如何在单击而不是右键单击时强制显示托盘图标的上下文菜单。
我尝试过使用MouseClick事件,但eventargs的鼠标位置为x0y0。
答案 0 :(得分:12)
这应该适合你:
private void notifyIcon1_Click(object sender, EventArgs e)
{
contextMenuStrip1.Show(Cursor.Position.X, Cursor.Position.Y);
}
答案 1 :(得分:9)
我发现另一种方法可以更好地运作:
private void notifyIcon1_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
System.Reflection.MethodInfo mi = typeof(NotifyIcon).GetMethod("ShowContextMenu", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
mi.Invoke(notifyIcon1, null);
}
}