滚动面板以编程方式

时间:2016-05-04 12:06:25

标签: c# .net winforms

我想了解更多关于C#的信息。

滚动面板时我遇到了很大问题。

我有一个面板包含Windows窗体中的许多按钮, 尝试使用两个按钮滚动它向上滚动并向下滚动。

我在谷歌搜索我发现了很多像这样的代码:

CategoryFlowPanel.AutoScrollPosition = 
    new Point(0, CategoryFlowPanel.VerticalScroll.Value +
                 CategoryFlowPanel.VerticalScroll.SmallChange * 7);

我的意思是 -

CategoryFlowPanel.AutoScrollPosition = new Point(0, 50);

我也发现了这个:

using (Control c = new Control() { Parent=p, Height = 1, Top = p.ClientSize.Height + pos })
{
    p.ScrollControlIntoView(c);
}

以及其他许多但只有在autoscroll为真的情况下它们才能正常工作

当autoscroll为true时,滚动条将显示

所以我的问题是 -

是否可以在没有自动滚动的情况下运行代码?

或者当autoscroll为true时是否有隐藏滚动条的方法?

我正在尝试

Panel.VerticalScroll.Visible = false;

但它不起作用。

抱歉我的英语不好,并提前致谢。

1 个答案:

答案 0 :(得分:2)

通过以编程方式设置HorizontalScroll.ValueVerticalScroll.Value,您可以滚动WinForms面板而不显示滚动条。这种方法可以根据需要与AutoScroll = false一起使用。