如何手动滚动面板?

时间:2008-11-04 17:07:36

标签: c# .net winforms

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

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

3 个答案:

答案 0 :(得分:13)

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

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

答案 1 :(得分:10)

如果您不想使用Autoscroll属性,那么很久以前我就会使用这种方式。

  • 将面板放在面板内。将滚动条控件放在父面板上,然后使用滚动条更改内部面板的Top属性。

它很简单,效果很好。

答案 2 :(得分:-3)

面板上可能有一个属性来执行此操作,或者您可以遍历所有面板子项并调整其位置。

EG。移动所有控件10 px:

int xoffset = 10;

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

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

相关问题