zoukankan      html  css  js  c++  java
  • DataGridView控制之左右键控制水平滚动条

    我们都知道Winfrom中,在正常情况下,左右键并不能直接控制DataGridView的水平滚动条滚动,它只能控制选中单元的移动,但在有些情况下,我们需要通过左右键来实现一列一列的滚动,那么我们可以这样做:

    在ProcessCmdKey的重载方法中写:

     

    protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
            {
                
    if (keyData == Keys.Left)
                {
                    
    if (this.HorizontalScrollingOffset > 0)
                    {
                        
    if (this.FirstDisplayedScrollingColumnHiddenWidth != 0)
                        {
                            
    this.HorizontalScrollingOffset -= this.FirstDisplayedScrollingColumnHiddenWidth;
                        }
                        
    else
                        {
                            
    this.HorizontalScrollingOffset -= 2;
                            
    this.HorizontalScrollingOffset -= this.FirstDisplayedScrollingColumnHiddenWidth;
                        }
                    }
                    return true;
                }
                
    else if (keyData == Keys.Right)
                {
                    
    if (this.HorizontalScrollingOffset < this.HorizontalScrollBar.Maximum)
                    {
                        
    this.HorizontalScrollingOffset += this.Columns[this.FirstDisplayedScrollingColumnIndex].Width - this.FirstDisplayedScrollingColumnHiddenWidth;
                    }
                    return true;
                }


                
    return base.ProcessCmdKey(ref msg, keyData);
            }
  • 相关阅读:
    MySQL JDBC驱动 01 Class.forName
    Sybase性能调试 Statistics
    MySQL InnoDB存储引擎 MySQL介绍
    Sybase性能调试 dbcc trace
    ASP.NET页面的生命周期
    注册JavaScript?
    泛型
    静态类和静态类成员
    构造函数
    MYSQL常用操作
  • 原文地址:https://www.cnblogs.com/myjece/p/1341178.html
Copyright © 2011-2022 走看看