我想在左鍵單擊NotifyIcon時顯示上下文菜單。只是調用NotifyIcon.ContextMenuStrip.Show()不能很好地工作。 A solution has been posted here before調用一個祕密方法使用反射:顯示NotifyIcon上下文菜單並控制其位置?
Dim mi As System.Reflection.MethodInfo = GetType(NotifyIcon).GetMethod("ShowContextMenu", Reflection.BindingFlags.Instance Or Reflection.BindingFlags.NonPublic)
mi.Invoke(Icon, Nothing)
這個偉大的工程,但我還需要其中顯示菜單控制。我想等待SystemInformation.DoubleClickTime在接收NotifyIcon.MouseUp事件和顯示菜單之間過去,以便我可以分別處理單擊和雙擊。但調用ShowContextMenu方法時會在ShowContextMenu被調用時顯示當前鼠標位置的菜單,而不是實際單擊圖標時的菜單。這意味着如果在DoubleClickTime中鼠標移動,菜單將顯示在屏幕的不同部分。因此,如果我可以控制顯示菜單的位置,則可以在收到MouseUp事件時保存鼠標座標,然後確保菜單顯示在圖標旁。有沒有辦法做到這一點?
在此先感謝。