如何手动滚动面板?

我想在Panel.AutoScroll为true时使用相同的功能,但滚动条不可见。

为此,我需要知道如何使用代码中的函数向上/向下滚动左/右。


您应该可以使用组件的VerticalScroll和Horizo​​ntalScroll属性:

c.HorizontalScroll.Value += 100;
c.VerticalScroll.Value = c.VerticalScroll.Maximum;

那么如果你不想使用Autoscroll属性,那么很久以前我就使用过这种方法。

  • 在面板内放置面板。 将滚动条控件放在父面板上,然后使用滚动条更改面板中的Top属性。
  • 它很简单,而且工作得很漂亮。


    在面板上可能有一个属性来做到这一点,或者你可以遍历所有面板的孩子并调整他们的位置。

    例如。 移动所有控件10 px:

    int xoffset = 10;
    
    foreach(Control c in panel1.Controls)
        c.Location.X += xoffset;
    

    可以将控件移动到负位置以使它们移出面板,类似地,它们的位置值可以大于面板大小,以使它们移出面板。

    链接地址: http://www.djcxy.com/p/53687.html

    上一篇: How to scroll a panel manually?

    下一篇: How to log actions in compact framework?