技术开发 频道

利用托管代码的方式创建Visifire Chart


【IT168技术文档】

  Visifire是利用Silverlight 2.0 beta 1开发的不错的Chart解决方案.利用它可以很容易的把其加入到各种技术方式实现的BS方案中的项目中去.按照官方的文档,只要加入一个xml文件就可以了,比如:
<vc:Chart xmlns:vc="clr-namespace:Visifire.Charts;assembly=Visifire.Charts" Theme="Theme3" AnimationType="Type3"> <vc:Title Text="Athens 2004 Olympics"/> <vc:AxisX Title="Country"/> <vc:AxisY Title="Gold Medals Won"/> <vc:DataSeries RenderAs="Column" LabelEnabled="True"> <vc:DataPoint AxisLabel="USA" YValue="35"/> <vc:DataPoint AxisLabel="China" YValue="32"/> <vc:DataPoint AxisLabel="Russia" YValue="27"/> <vc:DataPoint AxisLabel="Australia" YValue="17"/> <vc:DataPoint AxisLabel="Japan" YValue="16"/> </vc:DataSeries> </vc:Chart>
  不过对于开发人员来说这样一定很不爽,既然是开源的.net下的东西,为什么不能在程序中控制它呢?
Visifire.Charts.Chart visiChart = new Visifire.Charts.Chart(); Visifire.Charts.DataSeries dataSeries = new Visifire.Charts.DataSeries(); Visifire.Charts.DataPoint dataPoint; Visifire.Charts.Title title = new Visifire.Charts.Title(); title.Text = "Click On Chart To Refresh"; visiChart.Children.Add(title); visiChart.Width = 500; // Width and Height are required for the Chart. visiChart.Height = 300; Random rand = new Random(DateTime.Now.Millisecond); for (int i = 0; i < 9; i++) { dataPoint = new Visifire.Charts.DataPoint(); dataPoint.YValue = rand.Next(100, 1000); dataSeries.Children.Add(dataPoint); } dataSeries.RenderAs = "Point"; visiChart.Children.Add(dataSeries); LayoutRoot.Children.Clear(); // So that Chart objects don’t build up each time we add one. LayoutRoot.Children.Add(visiChart);
  这样在自己的系统中数据怎么取就自己说的算了,里面的数据元素实际上就是一个DataPoint数据类型,简单的很.
以下是Visifire的相关资源,强烈建议silverlight社区的朋友去看看,真的很眩.
0
相关文章