可实时监视数据的.NET控件

 

  虑到在某些场合可能会用到实时性能监测,以便用户能根据实时变化的数据而采取相应的操作,受到Windows性能监视器的启发,模仿它,同时又想到了可重用性,让其他开发人员可以直接调用它,经过一些很简单的设置就可以实时的显示出从传感器传来的实时数据,因此,把它做成组件就显得非常必要,改变其可变属性以适应各种场合。

  经过一段时间的琢磨,如今它终于可以"见人"了,好吧,先看看它的庐山真面目,下图是做的一个demo,由于身边没有什么可供监测的重要数据,就拿CPU和内存开刀了

 

上图使用了两个控件,各自经过一些简单的设置,就可以适应所在的场合,刻度标号,绘制颜色和线条宽度都可以根据自己的喜好和实际需要调整,很方便吧!

使用相当方便,下面将贴出其API文档

 

属性如下:

 

LeftEdgeToY                 纵轴与控件边界的距离

 

DownEdgeToX              横轴与控件边界的距离

 

IsShowCell                  是否显示背景网格

 

IntervalX                     网格线条的左右间隔距离

 

IntervalY                     网格线条的上下间隔距离

 

LineWidth                    网格线条宽度

 

LineColor                     网格线条颜色

 

EdgeLineColor             坐标轴线条颜色

 

DrawLineColor            实时数据线条颜色

 

DrawLineWidth            实时数据线条尺寸

 

SetYBeginValue           纵轴计量初始值(第一刻度的计数,以后的数据都是根据此数据递增)

 

ModuleTitle                 模块标题(用于设置该模块的名称,如上图中的"CPU实时监视模块")

 

SetYUnit                     纵轴的计量单位(如上图中的"%")

 

IsShowYmark             是否显示Y轴刻度

 

 

 

调用一个方法就可以将监测到的数据实时显示到控件上,该实例方法如下:

 

AddData(int data,int stepValue)

 

参数data为监测到的数据,setpValue为每跳间隔的距离

 

如下是一段实时监测CPU数据的代码,可把该方法视为线程方法,具体使用时可新建一个线程调用此方法:

 private void cpuMonitor() { int cpuUtil; PerformanceCounter pc = new PerformanceCounter("Processor", "% Processor Time", "_Total"); //循环接收数据 while (true) { Thread.Sleep(1000); cpuUtil = (int)pc.NextValue(); //调用 cell1.AddData(cpuUtil, 3); //将监测到的数据传入控件 } }

 

 

注意:

 不要设置控件的Dock属性,默认即可。

 

附件下载:

 

http://download.csdn.net/source/2641397

 

 

2010-08-23

你可能感兴趣的:(.NET组件/控件,.net,网格,windows,文档,api,2010)