문제

트레이 아이콘이 마우스 오른쪽 버튼을 클릭하지 않고 클릭 할 때 컨텍스트 메뉴를 표시하는 방법은 어떻게하나요?

Ive는 Mouseclick 이벤트를 사용해 보았지만 Eventargs는 x0y0에 마우스 위치가 있습니다.

도움이 되었습니까?

해결책

이것은 당신을 위해 그것을해야합니다 :

private void notifyIcon1_Click(object sender, EventArgs e)
        {
            contextMenuStrip1.Show(Cursor.Position.X, Cursor.Position.Y);
        }

다른 팁

조금 더 잘 작동하는 대체 방법 :

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);
        }
    }
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top