Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# .ContextMenu和.ContextMenuStrip之间的差异_C#_.net_Winforms_Menu - Fatal编程技术网

C# .ContextMenu和.ContextMenuStrip之间的差异

C# .ContextMenu和.ContextMenuStrip之间的差异,c#,.net,winforms,menu,C#,.net,Winforms,Menu,Windows窗体中的.ContextMenu和.ContextMenuStrip之间有什么区别 我已经知道什么是ContextMenu,但是ContextMenuStrip与ContextMenu有何不同?根据,ContextMenuStrip取代了ContextMenu类: 虽然ContextMenuStrip替换并向 ContextMenu控件以前的版本,ContextMenu保留用于 向后兼容性和未来使用(如果您选择) 资料来源: 编辑:为什么使用-1?来自 ContextMenuStr

Windows窗体中的
.ContextMenu
.ContextMenuStrip
之间有什么区别

我已经知道什么是
ContextMenu
,但是
ContextMenuStrip
ContextMenu
有何不同?

根据,ContextMenuStrip取代了ContextMenu类:

虽然ContextMenuStrip替换并向 ContextMenu控件以前的版本,ContextMenu保留用于 向后兼容性和未来使用(如果您选择)

资料来源:

编辑:为什么使用-1?

来自

ContextMenuStrip替换ContextMenu


如果您浏览
ContextMenu
,您会注意到
ContextMenuStrip
替换了它,但出于兼容性目的,
ContextMenu
被保留下来。

contextMenu-表示快捷菜单。虽然ContextMenuStrip替换了以前版本的ContextMenu控件并向其添加了功能,但ContextMenu保留了向后兼容性和将来使用(如果您选择)

ContextMenuStrip替换并向以前版本的ContextMenu控件添加功能

你可能想知道为什么微软已经取代了一个有价值的和流行的 与新来者进行控制。
ContextMenuStrip
控件具有良好的性能 让它变得更好。它的工作原理与
上下文菜单
控件类似。 您仍然可以通过以下方式将
ContextMenuStrip
控件附加到另一个用户控件: 更改该控件的
ContextMenuStrip
属性。然而,微软 大大改进了您可以添加到
ContextMenuStrip
cont

请看MSDN上的示例:

ContextMenuStrip
替换
ContextMenu
。你可以把一个
ContextMenuStrip
带有任何控件,并单击鼠标右键 自动显示快捷菜单。你可以展示一个
ContextMenuStrip
通过使用Show方法编程。
ContextMenuStrip
支持可取消的打开和关闭事件 处理动态填充和多次单击场景。
ContextMenuStrip
支持图像、菜单项检查状态、文本、访问 键、快捷键和级联菜单

如果还为控件分配了
上下文菜单
,则
ContextMenu
优先于
ContextMenuStrip


是的,我先查了MSDN,但没有有用的信息。哎呀,为什么投票失败?仅供参考,几乎所有关于C#的问题都可以通过MSDN、谷歌、必应和互联网来回答。这里值得一问,因为开发人员可能希望在StackOverflow中首先找到答案!我否决了所有答案(但不是问题),因为“ContextMenusTrip取代ContextMenu”是一个大呵欠。当然有。问的问题是有什么区别?@RobertHarvey:说得好。我会继续等待更好的答案。我期待类似“如果你想这样做,请使用ContextMenu;如果你想这样做,请使用ContextMenuStrip…”的东西。谢谢你指出这一点。MSDN是一个大海捞针,关于一个控件可以有很多页,而这一页回答了这个问题。这是一个糟糕的运动,投反对票,不发表评论。你将如何从中学习…?1是因为你没有以一种非平凡的方式回答这个问题。OP问的是区别是什么,我认为你的回答没有任何价值,只是重复了显而易见的观点。我不同意你的观点。在撰写本文时,还没有答案。问题是“ContextMenuStrip与ContextMenu有何不同”,我引用了MSDN的答案。无论如何我想知道我在投了反对票后做错了什么。这就是为什么我从不评论我的反对票。我总是陷入争论。编辑你的问题只是为了添加“为什么是-1?”似乎。。。无济于事。我认为最后一点回答了这个问题。因此,基本上,完全不要使用ContextMenu,而是使用ContextMenuStrip。