Я предполагаю, что вы используете стандартный элемент управления .net VScrollBar. Элемент управления имеет свойства Maximum и Value. Максимум контролирует максимальное значение для значения. Существуют также свойства 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)
// ...
}