我正在创建一个简单的剪贴板管理器应用程序。它监视剪贴板的内容。当发生更改时(通过 win api 消息循环),它会启动一个方法来捕获剪贴板的当前内容并创建名为 clipboarditem 的新对象。接下来它构建了一个 ContextMeuStrip,它由之前创建的几个剪贴板项组成。通过热键访问项目菜单。它在屏幕 itemsMenu.Show(caretPosition); 的某个位置显示此菜单,使用 .Focus(),我希望它在失去焦点后使其消失(例如,单击屏幕上的其他位置或通过以下方式切换应用程序alt 选项卡)。找到一个事件 OnLoseFocus 但我认为它不能正常工作,因为菜单甚至不会显示。
失去焦点后如何使 ContextMenuStrip 消失以及如何防止在 taskabr 中显示 ContextMenuStrip?
对不起我的语言能力:)