注:笔者ZedGraph的使用背景,需要长时间测试(24小时),自行存储文件(图形数据文件会有几百M),周期性地删除ZedGraph 数据系列里超时的数据点,以提升性能。当用户拖动查看历史数据时,则从存储文件里读取相应数据。
在使用ZedGraph 绘制实时数据系列时,用户一方面需要图形自行实时滚动,另一方面还需要查看历史数据,这时可以使用控件默认的鼠标加键盘来配合进行拖动,但是这种方式存在一个问题,当历史数据量很大时使用鼠标拖动就比较慢而且不太自然,此时如果使用Scrollbar的话,则会很方便。
使用ZedGraph 的Scrollbar,则需将其 "IsShowHScrollBar"设置为"true"。这时,图形控件下方就会显示出Scrollbar可以方便地拖动。但是这样还存在一个问题,由于笔者会定期清除数据,此时即便用户拖动Scrollbar也无法查看历史数据,其原因即在于ZedGraph默认的滚动范围是根据数据系列里的点自动确定的,如果要自己设定,则要将 "IsAutoScrollRange"设置为"false",这样滚动范围就可以自行灵活控制了。再辅以“ScrollDoneEvent”事件,在拖动完成后即时加载数据,就可以解决问题了。