2012-05-15 2 views
1

코드를 가로로 스크롤하고자하는 패널이 있는데, 문제는 코드 줄이 실행될 때마다 스크롤하는 것으로 보인다는 것입니다. 이 임코드를 통해 패널을 스크롤하는 방법은 무엇입니까?

private void MyScrollButton_Click(object sender, EventArgs e) 
{ 
    MainPanel.HorizontalScroll.Value += 64; 
} 

이 때마다 발생하는 것입니다,

1st Click: Panel Scrolls and ScrollBar Remains Still 
2nd Click: Panel remains still and ScrollBar scrolls 
3rd Click: Same as 1st 
4th Click: Same as 2nd 

.... ... 반복을 사용하는 것입니다

+1

'+ = 32'로 설정하고 매번 네 번 스크롤 할 때만 볼 수 있습니다. 이것은 스크롤링이 실제로 최소한의 차이, 아마'delta = 100' 주위에서 수행된다는 것을 가르쳐 줄 것입니다. – SimpleVar

+0

'+ = 32','+ = 16'을 시도했습니다. 2 번 째로 계속 스크롤됩니다. – theIrishUser

답변

4

와 당신이 필요로하는 (대신 AutoScrollPosition를 사용해보십시오 값을 반전하려면 다음을 입력하십시오.

private void MyScrollButton_Click(object sender, EventArgs e) { 
    MainPanel.AutoScrollPosition = new Point(-MainPanel.AutoScrollPosition.X + 64, 
              -MainPanel.AutoScrollPosition.Y); 
} 
+0

Lars 감사합니다. – theIrishUser

관련 문제