滚动面板以编程方式

问题描述 投票:0回答:1

我正在尝试更多地了解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;

但它不起作用。

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

c# .net winforms
1个回答
2
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.