显示Context MenuStrip的复选框或按钮的上下文菜单

Swa*_*and 6 c# contextmenu contextmenustrip winforms

我正在设计一个日志记录功能,用户可以在其中选择要记录的事件.点击按钮,我显示这种类型的菜单: 单击按钮上下文菜单

用户可以选择多个事件,因此当用户点击它时,我需要在所选选项的前面显示"复选标记".

我无法找到此问题中提到的"Checked"或"CheckOnClick"等选项.

我尝试使用ContextMenu和ContextMenuStrips但无法实现Checkboxes.有什么建议??

Mic*_*kus 9

看不到任何代码,所以我不知道你是如何创建这个菜单的.但从最一般的角度来说,这是您访问该Checked物业的方式.

((ToolStripMenuItem)contextMenuStrip.Items[0]).Checked = true; //false;
((ToolStripMenuItem)contextMenuStrip.Items[1]).Checked = true; //false;
((ToolStripMenuItem)contextMenuStrip.Items[2]).Checked = true; //false;
Run Code Online (Sandbox Code Playgroud)

您可以将它们指定为true或false.如果您已命名ToolStripItems,那么您可以直接访问它们而不是转到Items数组.

contextMenuStrip.event1.Checked = true; //false;
Run Code Online (Sandbox Code Playgroud)

如你所见,我正在使用ContextMenuStrip.


WeS*_*lah 6

将属性CheckOnClick更改为True

在此处输入图片说明


Dav*_*ave 5

为了使其直观地工作,您需要确保“ShowCheckMargin”属性为ON。否则“.Checked”属性将默默地不执行任何操作。