首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >弹出窗口和上下文菜单

弹出窗口和上下文菜单
EN

Stack Overflow用户
提问于 2010-02-24 04:07:24
回答 2查看 1.5K关注 0票数 1

我使用ToolStripDropDown将用户控件作为弹出窗口进行托管。问题是,当从该弹出窗口中显示上下文菜单条时,该弹出窗口本身在上下文菜单打开的瞬间关闭。我尝试将ContextMenuStrip子类化,并将WS_EX_NOACTIVATE添加到CreateParams中,但没有任何变化。首先,我认为没有办法做到这一点,因为这是常见的行为,但后来我尝试将一个TextBox类放到弹出用户控件上,并调用“编辑”控件上下文菜单-但父弹出窗口没有关闭。我遗漏了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-05-04 06:19:54

也有类似的问题。在我的UserControll上有一个工具条。当我按下toolsstripdropdownbutton按钮时,下拉菜单显示出来,但弹出窗口消失了。原因是popup.Autoclose是真的。设置为false后,弹出窗口不再关闭。

代码语言:javascript
复制
        ToolStripDropDown popup = new ToolStripDropDown();
        popup.AutoClose = false;         //Set to FALSE
        popup.Margin = Padding.Empty;
        popup.Padding = Padding.Empty;
        ToolStripControlHost host = new ToolStripControlHost(userControl1);
        host.Margin = Padding.Empty;
        host.Padding = Padding.Empty;
        popup.Items.Add(host);
        popup.Show(button1, new Point(100,100));
票数 1
EN

Stack Overflow用户

发布于 2017-03-03 20:58:41

实际的解决方案应该是马丁最后评论中的解决方案:使用ContextMenu而不是我喜欢的ContextMenuStrip,当右键单击它的内容控件时,ToolStripDropDown不再像它应该的那样自动关闭。我们仍然需要它到AutoClose,在ToolStripDropDown上禁用AutoClose会做坏事,它应该在失去焦点时关闭。示例:打开任何其他应用程序窗口,ToolStripDropDown将继续显示在顶部

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2321325

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档