【问题标题】:Forward Form.MouseWheel event to TextBox将 Form.MouseWheel 事件转发到 TextBox
【发布时间】:2013-06-25 14:37:45
【问题描述】:

我有一个表单,它有 2 个文本框。其中之一是 MultiLine 和 ReadOnly。另一个是用于输入命令,所以我希望它始终处于焦点。 是否可以将 Form 的 MouseWheel 事件转发到 TextBox,这样我就可以在 TextBox 中滚动而不让它成为焦点? 如果不是,最好的解决方法是什么?

提前致谢。

【问题讨论】:

    标签: c# .net winforms events


    【解决方案1】:

    可以通过窗体的鼠标滚轮事件获取滚动值,然后手动设置TextBox的滚动,使用ScrollToCaret()。

    textBox.SelectionStart = scrollPosition;
    textBox.ScrollToCaret();
    

    要获取滚动值,请使用 MouseWheel 事件:http://msdn.microsoft.com/en-us/library/system.windows.forms.control.mousewheel(v=vs.71).aspx

    【讨论】:

      猜你喜欢
      • 2015-03-07
      • 1970-01-01
      • 2015-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多