2011-09-02 2 views
0

는 I는 I 데이터의 범위는 [내에있는 따르는 축선을 가지는 시리즈를 한 경우 나, 그러나DataVisualization.Charting에서 포인트 범위가 [-1,1]보다 작을 때 확대/축소를 허용합니까?

 chartArea1.CursorX.IsUserEnabled = true; 
     chartArea1.CursorX.IsUserSelectionEnabled = true; 
     chartArea1.CursorY.IsUserEnabled = true; 
     chartArea1.CursorY.IsUserSelectionEnabled = true; 

설정 한 사용자 제어 줌 기능을 활성화하기 위해 DataVisualization.Charting.Chart 및이 - 1,1] 차트에서 해당 축을 확대/축소 할 수 없습니다. 확대/축소를 사용하는 방법이 있습니까?

또한 확대/축소 선택기가 매우 두툼한 것처럼 보입니다 (주요 간격 등으로 스냅)하여보다 부드러운 선택을 할 수 있습니까?

+0

이것은 WPF 또는 WinForms를 사용하는 것입니까? – Dennis

+0

오랫동안 답변을 드려 죄송합니다.이 WinForms를 작성 중입니다. –

답변

0

문제가 밝혀졌다은 이산 그리드 좌표 위치를 취할 수되는 확대 커서에 의해 발생합니다. 이들은 Cursor.Interval과 Cursor.Offset에 의해 제어됩니다.

Chart.ChartAreas[0].CursorX.Interval = 0; 
Chart.ChartAreas[0].CursorY.Interval = 0; 

이렇게하면 확대/축소 커서가 모든 좌표를 취할 수 있도록 그리드가 연속됩니다.

0

귀하의 질문에 명시하지 않았으므로 WPFWinForms 모두 처리 중입니다.

WPF는

이 차트의 내용을 가상화하는 것을 같은데 (즉 단지보기에 어떻게 드로잉). 이 경우에는 ScrollViewer.CanContentScrollFalse으로 설정하여 확인하십시오. 그렇지 않으면 큰 데이터 세트로 인해 성능이 저하 될 수 있으므로 가상화를 계속 유지해야합니다.

윈폼

당신이 Chart.DoubleBuffered 속성을 설정 했습니까? 이 속성을 true으로 설정하면 깜박임을 줄이거 나 방지하기 위해 보조 버퍼를 사용하여 차트 컨트롤을 다시 그릴 수 있습니다.

  • Chart 클래스 (MSDN)
  • Control.DoubleBuffered 속성 (MSDN)
+0

감사합니다. 설정하지 않았으므로 화요일에 시도해 보겠습니다. 왜 보조 버퍼가 확대를 허용합니까? 나는 술에 취하지 않는다. –

+0

나는보고있는 문제가 단순히 페인트를 이중 버퍼링하여 수정 될 수있는 재 렌더링 (즉, 깜박임) 렌더링이라고 생각합니다. ... 샘플 응용 프로그램을 만들고 직접 디버깅하지 않아도 문제에 대한 좋은 추측입니다. – Dennis

+0

Control.DoubleBuffered가 보호되어 있으므로 외부에서 수정할 수 없습니다. 또한 이중 버퍼링 값이 부족하여 확대/축소 사각형을 그릴 수 없게됩니다. –

관련 문제