none
#事件处理#WINForm中如何使Gridview下拉滚动条在鼠标滚动时不动,只有在鼠标左键按在上面向下拖动时才动? RRS feed

  • 问题

  • Datagridview 一般在鼠标滚动时,下拉条会自动滚动。我现在改成了鼠标滚动时候是记录的上下切换,所以不希望滚动条自动滚动。希望是:

    下拉滚动条在鼠标滚动时不动,只有在鼠标左键按在上面向下拖动时才动。

    希望找到示例代码。

    2012年10月26日 5:59

答案

  • 通过事件拦截还是怎么?

    已经搞定。代码如下:

     private void dgwFlowerPics_MouseWheel(object sender, MouseEventArgs e)
            {
                int iRowIndex = iSelectedIndex;
                ((HandledMouseEventArgs)e).Handled = true; //禁止事件转发
                
                if (e.Delta > 0) //放大
                {
                    SendKeys.Send("{UP}"); //模拟向上键 
                    
                  
                }
                else //缩小
                {
                    SendKeys.Send("{DOWN}"); //模拟向下键
    
                  
                }
            }


    • 已标记为答案 曲风荷 2012年10月29日 7:00
    2012年10月29日 7:00

全部回复

  • 通过事件拦截还是怎么?

    2012年10月26日 9:25
  • 通过事件拦截还是怎么?

    已经搞定。代码如下:

     private void dgwFlowerPics_MouseWheel(object sender, MouseEventArgs e)
            {
                int iRowIndex = iSelectedIndex;
                ((HandledMouseEventArgs)e).Handled = true; //禁止事件转发
                
                if (e.Delta > 0) //放大
                {
                    SendKeys.Send("{UP}"); //模拟向上键 
                    
                  
                }
                else //缩小
                {
                    SendKeys.Send("{DOWN}"); //模拟向下键
    
                  
                }
            }


    • 已标记为答案 曲风荷 2012年10月29日 7:00
    2012年10月29日 7:00
  • Hi 曲风荷,

      欢迎来到MSDN中文论坛。

      很高兴你亲自解决了问题,并且能够把这些分享给所有的论坛成员,再次感谢你的慷慨!


    Jason Wang [MSFT]
    MSDN Community Support | Feedback to us

    2012年10月29日 7:20
    版主