Чтобы сделать содержимое прокрутки элемента управления, вы передаете значение AutoScrollPosition в e.Graphics.TranslateTransform ().Это ваш угол, измените значение, которое вы передаете.
Напишите небольшой вспомогательный класс, который наблюдает за значением AutoScrollPosition элемента управления с помощью метода, который вы вызываете в своем методе OnPaint, передавая e.Graphics, чтобы вы могли вызвать его TranslateTransformметод.Когда вы увидите, что это изменится, запишите Environment.TickCount, установите внутренний флаг 'scrollBusy' и запустите таймер на 15 мсек.На каждой отметке таймера вызывайте метод Invalidate () элемента управления, чтобы вычислить новое значение для TranslateTransform при повторном вызове метода.Вычислите приращение от первоначальной к целевой позиции прокрутки, чтобы, скажем, 250 мсек.