2013-03-08 3 views
4

У меня есть диаграмма, в ней есть одна диаграмма с осью оси x оси. Прежде всего, я должен установить его на масштабируемой,Как я могу контролировать способность масштабирования диаграммы в winform C#?

chart1.ChartAreas[0].AxisY.ScaleView.Zoomable = true; 
chart1.ChartAreas[0].AxisX.ScaleView.Zoomable = true; 

По умолчанию, если выбрать прямоугольную область с помощью мыши, диаграмма будет увеличить в выбранной области. Но это довольно раздражает, потому что оно подвержено ложной операции. Но если я это сделать:

chart1.ChartAreas[0].AxisY.ScaleView.Zoomable = false; 
chart1.ChartAreas[0].AxisX.ScaleView.Zoomable = false; 

Оси не будет увеличить, даже если я называю

chart1.ChartAreas[0].AxisX.ScaleView.Zoom(a, b); 

Итак, я хочу ChartArea быть масштабируемой, но мне не нравится мышь выбор способность.

Я нашел способ,

void chart1_SelectionRangeChanged(object sender, CursorEventArgs e) 

кажется, что когда я выбираю новую область, этот метод будет называться , но это не означает, что переопределение. Что мне делать? Спасибо!

ответ

2

попробовать это:

var ca = chart1.ChartAreas["ChartArea1"].CursorX; 
ca.CursorX.IsUserEnabled = false; 
ca.CursorX.IsUserSelectionEnabled = false; 

(и то же самое для беглого, и замена «ChartArea1» с названием вашей карты местности, если он отличается).

Это отключит выбор мыши, поэтому вы больше не будете рисковать случайным масштабированием.

+0

Это работает! Спасибо большое! – aihenry2980

+0

Я думаю, что у вас слишком много «CursorX». –

Смежные вопросы