【问题标题】:ContextMenuStrip and mouse wheelContextMenuStrip 和鼠标滚轮
【发布时间】:2011-02-10 02:29:15
【问题描述】:

我有一个包含许多项目的 ContextMenuStrip。

如何处理鼠标滚轮来滚动项目?

我在网上搜索,但没有找到有用的。

或者如何从上下文菜单中获取第一个/最后一个显示/可见的项目?

【问题讨论】:

    标签: c# winforms mousewheel contextmenustrip


    【解决方案1】:

    向 CMS 添加太多需要滚动的项目完全违背了上下文菜单的目的。不要设计一个难以使用并且需要用户浏览几十个项目的 UI。您的用户会因为热情而讨厌您的程序,并会发现您的住所。

    CMS 支持子菜单。对您的菜单项进行分类。

    【讨论】:

    • 相信我,我已经知道你写的所有这些东西,但对我来说并不重要。
    【解决方案2】:

    由于这是一个老问题,您可能不需要它,但只是以防万一,以备将来参考。 您可以模拟上下按键来滚动浏览它,它远非完美,但它比必须编写自己的 ContextMenuStrip 来处理滚轮。 Mouse wheel scrolling Toolstrip menu items

    【讨论】:

      【解决方案3】:

      虽然这个问题很老了,但有人可能仍然会从我的输入中受益......

      var menu = new ContextMenuStrip();
      menu.MouseWheel += (ob, ev) => SendKeys.SendWait(ev.Delta > 0 ? "{UP}" : "{DOWN}");
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-09-29
        • 1970-01-01
        • 1970-01-01
        • 2014-10-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多