【发布时间】:2011-02-10 02:29:15
【问题描述】:
我有一个包含许多项目的 ContextMenuStrip。
如何处理鼠标滚轮来滚动项目?
我在网上搜索,但没有找到有用的。
或者如何从上下文菜单中获取第一个/最后一个显示/可见的项目?
【问题讨论】:
标签: c# winforms mousewheel contextmenustrip
我有一个包含许多项目的 ContextMenuStrip。
如何处理鼠标滚轮来滚动项目?
我在网上搜索,但没有找到有用的。
或者如何从上下文菜单中获取第一个/最后一个显示/可见的项目?
【问题讨论】:
标签: c# winforms mousewheel contextmenustrip
向 CMS 添加太多需要滚动的项目完全违背了上下文菜单的目的。不要设计一个难以使用并且需要用户浏览几十个项目的 UI。您的用户会因为热情而讨厌您的程序,并会发现您的住所。
CMS 支持子菜单。对您的菜单项进行分类。
【讨论】:
由于这是一个老问题,您可能不需要它,但只是以防万一,以备将来参考。 您可以模拟上下按键来滚动浏览它,它远非完美,但它比必须编写自己的 ContextMenuStrip 来处理滚轮。 Mouse wheel scrolling Toolstrip menu items
【讨论】:
虽然这个问题很老了,但有人可能仍然会从我的输入中受益......
var menu = new ContextMenuStrip();
menu.MouseWheel += (ob, ev) => SendKeys.SendWait(ev.Delta > 0 ? "{UP}" : "{DOWN}");
【讨论】: