在下拉列表选择中禁用MenuStrip自动隐藏

Gen*_*ius 2 .net c# menustrip winforms drop-down-menu

当我从Menu-strip控件的下拉列表中选择任何选项时,其Click事件中的代码将被触发,下拉列表将崩溃.但我希望下拉必须保持开放.

请帮忙

如果我在此菜单中单击该项目时打开一个对话框,则打开的菜单始终保留在对话框的前面.如何发送回去?

Abd*_*Haj 10

如果Reception是类型ToolStripMenuItem你可以这样做:

Reception.DropDown.AutoClose = false;
Run Code Online (Sandbox Code Playgroud)

您需要为实验室,管理员执行此操作..如果您希望对他们产生相同的效果.

PS:即使失去焦点,菜单也会保持打开状态.所以你需要手动/编程关闭它.

或者(我认为这是更有效),办理下拉结束活动,并取消closing如果CloseReasonItemClicked.

Reception.DropDown.Closing += new ToolStripDropDownClosingEventHandler(DropDown_Closing);

private void DropDown_Closing(object sender, ToolStripDropDownClosingEventArgs e)
    {
        if (e.CloseReason == ToolStripDropDownCloseReason.ItemClicked || e.CloseReason == ToolStripDropDownCloseReason.AppFocusChange)
           e.Cancel = true;
    }
Run Code Online (Sandbox Code Playgroud)