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);
            }
  • 相关阅读:
    家庭记账本1
    寒假福利5
    寒假福利4——定位功能
    寒假福利3——日期时间选择器
    寒假作业——家庭小账本1.6(总结)
    寒假作业——家庭小账本1.5
    寒假作业——家庭小账本1.4
    寒假作业——家庭小账本1.3
    寒假作业——家庭小账本1.2
    寒假作业——家庭小账本1.1
  • 原文地址:https://www.cnblogs.com/myjece/p/1341178.html
Copyright © 2011-2022 走看看