C# 如何确定滚动条的长度(大小)?

C# 如何确定滚动条的长度(大小)?,c#,winforms,C#,Winforms,如何细化垂直滚动条的长度大小?我在一个文档中有5页,需要5页向下命令才能进入底部。我想知道这五页总共需要的滚动条的长度。有没有一种方法可以在C中找到滚动条的总长度/大小?我假设您使用的是标准的.net VScrollBar控件。控件具有最大值和值属性。最大值控制值的最大值。还需要设置SmallChange和LargeChange属性 此外,我假设您需要根据您在其中阅读的文档更改最大值,因此,您将在代码中设置这些值,而不是设计时间 因此,在上面的场景中,我们可以编写以下代码,以获得所需的行为,即在

如何细化垂直滚动条的长度大小?我在一个文档中有5页,需要5页向下命令才能进入底部。我想知道这五页总共需要的滚动条的长度。有没有一种方法可以在C中找到滚动条的总长度/大小?

我假设您使用的是标准的.net VScrollBar控件。控件具有最大值和值属性。最大值控制值的最大值。还需要设置SmallChange和LargeChange属性

此外,我假设您需要根据您在其中阅读的文档更改最大值,因此,您将在代码中设置这些值,而不是设计时间

因此,在上面的场景中,我们可以编写以下代码,以获得所需的行为,即在上下滚动或分页时捕捉到5个位置中的每一个

void LoadDocument(string documentName) {
    //...
    int pages=doc.PageCount; // assume 5 for now
    vScrollBar1.Maximum = pages;
    vScrollBar1.Value = 0; // set it to the first page on load.
    vScrollBar1.LargeChange = 1; // this forces page-by-page navigation. 
                            //(Not recommended on large documents, FYI)
    // ...
}

这是WinForms、WPF还是别的什么?我会帮你重新打包。