C# 窗口失去焦点后更新ToolstripDropdownButton时出现问题
让我从一个简单的例子开始重现我的问题:C# 窗口失去焦点后更新ToolstripDropdownButton时出现问题,c#,winforms,focus,toolstrip,toolstripdropdown,C#,Winforms,Focus,Toolstrip,Toolstripdropdown,让我从一个简单的例子开始重现我的问题: 创建WinForms项目 在上面放一个工具条 在其中制作一个ToolstripDropdownButton(没有子项) 将click事件处理程序添加到按钮,如下所示: MessageBox.Show("text", "Caption"); (重点是使主窗体失去焦点) 为了使问题更加明显,让我们做一些不必要的补充: 将ToolStip的RenderMode设置为ManagerRenderMode 将其“自动调整大小”设置为false,并使其变大 这应该足以
MessageBox.Show("text", "Caption");
(重点是使主窗体失去焦点)我试着调用按钮重置背景色,刷新。。。也作为工具条。似乎不起作用。也许我遗漏了什么?消息框或模式表单会干扰这一点。下拉列表应为子菜单项 解决方案示例:
private void toolStripDropDownButton1_Click(object sender, EventArgs e) {
this.BeginInvoke(new Action(() => MessageBox.Show("Help")));
}
在哪里添加事件处理程序?如果您正在处理button\u click事件,那么它不应该以这种方式运行,但是如果您正在处理button\u down之类的事情,那么您的主GUI可能会由于交叉线程而停止运行,并失败。正如我所说的,通常是“click event handler”。