DevExpress chartControl 数据绑定

  • chartControl 数据绑定
    • ChartControl直接绑定
    • Series 绑定
    • 例程附件

chartControl 数据绑定

这里介绍两种绑定方式ChartControl直接绑定以及ChartControl里的series绑定

ChartControl直接绑定

通过chartControl的DataSource属性直接bingdings,DateSouce可以是实体list或者dataTable,按个人需求添加,这里用dataTable。
这里用数据库access做例程, 数据表结构比较简单,数据库名Database.mdb,文件置于程序根目录下,如下:

dataSet初始化代码,

        private string txtConn ;private OleDbConnection dConnection;private  DataSet dSet;private  OleDbDataAdapter dAdapter;private void InitializeOledObject(){txtConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=.\\Database.mdb";dConnection = new OleDbConnection(txtConn);string txtCommand = "SELECT * FROM DataRecord order by time asc";dAdapter = new OleDbDataAdapter(txtCommand, dConnection);OleDbCommandBuilder combuilder = new OleDbCommandBuilder(dAdapter);combuilder.QuotePrefix = "[";//此两句是为了排除执行Update命令时提示“insert into语法错误”combuilder.QuoteSuffix = "]";dAdapter.InsertCommand = combuilder.GetInsertCommand();dAdapter.UpdateCommand = combuilder.GetUpdateCommand();dAdapter.DeleteCommand = combuilder.GetDeleteCommand();dSet = new DataSet();dAdapter.Fill(dSet);}

chart控件运行时添加,代码如下

         DevExpress.XtraCharts.ChartControl chartControl1 = new DevExpress.XtraCharts.ChartControl();    DevExpress.XtraCharts.SplineSeriesView splineSeriesView1 = new DevExpress.XtraCharts.SplineSeriesView();chartControl1.BeginInit();chartControl1.Dock = System.Windows.Forms.DockStyle.Fill;chartControl1.Location = new Point(0, 0);chartControl1.Parent = this;//手动生成Diagram,因为需要设置时间x坐标轴聚合单位,及开启缩放支持DevExpress.XtraCharts.XYDiagram xyDiagram1 = new DevExpress.XtraCharts.XYDiagram();  xyDiagram1.AxisX.DateTimeScaleOptions.MeasureUnit = DevExpress.XtraCharts.DateTimeMeasureUnit.Second;xyDiagram1.AxisX.DateTimeScaleOptions.ScaleMode = DevExpress.XtraCharts.ScaleMode.Manual;xyDiagram1.EnableAxisXScrolling = true;xyDiagram1.EnableAxisXZooming = true;chartControl1.Diagram = xyDiagram1;//数据源绑定dataSet里的dataTablechartControl1.DataSource = dSet.Tables[0];//自动生成的series的x值对应数据库time字段chartControl1.SeriesTemplate.ArgumentDataMember = "time";//自动生成的series的Y值对应数据库temperature字段,部分series类型y值需要指定两个值,这里默认line series 只add一个字段就好chartControl1.SeriesTemplate.ValueDataMembers.AddRange("temperature");//chart dataSource数据绑定可根据SeriesDataMember,用以数据归类,生成series,可生成多条serieschartControl1.SeriesTemplate.SeriesDataMember = "dataRecordId";//设置series类型为线图chartControl1.SeriesTemplate.View = splineSeriesView1;chartControl1.Legend.MarkerMode = DevExpress.XtraCharts.LegendMarkerMode.CheckBoxAndMarker;//Legend label 格式化chartControl1.SeriesTemplate.LegendTextPattern = "测试Id:{S}";//corssHair label 格式化chartControl1.SeriesTemplate.CrosshairLabelPattern = "{A:yyyy-MM-dd H:mm:ss}: {V:F2}";chartControl1.EndInit();

数据库中假数据35000条数据,共生成series11条,运行显示如下:

Series 绑定

当只有一条series需要绑定,不需要生成个多条时,可直接直接series 绑定,设置datasource、ValueDataMembers及ArgumentDataMember即可

         //手动生成一条seriesDevExpress.XtraCharts.Series series1 = new DevExpress.XtraCharts.Series();DevExpress.XtraCharts.ChartControl chartControl1 = new DevExpress.XtraCharts.ChartControl();DevExpress.XtraCharts.SplineSeriesView splineSeriesView1 = new DevExpress.XtraCharts.SplineSeriesView();chartControl1.BeginInit();chartControl1.Dock = System.Windows.Forms.DockStyle.Fill;chartControl1.Location = new Point(0, 0);chartControl1.Parent = this;DevExpress.XtraCharts.XYDiagram xyDiagram1 = new DevExpress.XtraCharts.XYDiagram();xyDiagram1.AxisX.DateTimeScaleOptions.MeasureUnit = DevExpress.XtraCharts.DateTimeMeasureUnit.Second;xyDiagram1.AxisX.DateTimeScaleOptions.ScaleMode = DevExpress.XtraCharts.ScaleMode.Manual;xyDiagram1.AxisY.GridLines.Visible = false;xyDiagram1.AxisY.Interlaced = true;xyDiagram1.EnableAxisXScrolling = true;xyDiagram1.EnableAxisXZooming = true;chartControl1.Diagram = xyDiagram1;//series 绑定series1.DataSource = dSet.Tables[0];series1.ArgumentDataMember = "time";series1.ValueDataMembers.AddRange("temperature");chartControl1.Legend.MarkerMode = DevExpress.XtraCharts.LegendMarkerMode.CheckBoxAndMarker;series1.LegendTextPattern = "测试Id:{S}";series1.View = splineSeriesView1;series1.CrosshairLabelPattern = "{A:yyyy-MM-dd H:mm:ss}: {V:F2}";//series添加到chart控件中chartControl1.Series.Add(series1);chartControl1.EndInit();

例程附件

链接: link.

DevExpress chartControl 数据绑定相关推荐

  1. DevExpress ChartControl大数据加载时有哪些性能优化方法

    DevExpress ChartControl加载大数据量数据时的性能优化方法有哪些? 关于图表优化,可从以下几个方面解决: 1.关闭不需要的可视化的元素(如LineMarkers, Labels等) ...

  2. DevExpress chartControl 基本结构说明

    chartControl 使用教程及chart数据绑定 DevExpress说明 ChartControl 结构 series ==主要== Diagram ==主要== Chart Titles L ...

  3. DevExpress ChartControl ToolTipPointPattern和ToolTipSeriesPattern

    原本只是想改一下鼠标放到曲线上的tip显示的小数点位数 然后就发现他这个属性还挺多,多到有点看不懂 然后就写了小demo测试 demo代码 // Create a series and add poi ...

  4. DevExpress——ChartControl知多少(C#)

    目前在做的这个项目后端是使用.NET框架在做,前端是借助DevExpress框架做开发,由于是基于Winform的页面实现,于是DevExpress提供了全套的Winform的解决方案,弥补了Winf ...

  5. DevExpress AspxGridView数据绑定

    绑定字段名可能区分大小写,oracle数据库通常需要全部大写字段名 点击编辑.删除等无效,检查KeyFieldName是否填写 KeyFieldName支持多个需要使用分号分割 取某行数据: Data ...

  6. C# WPF图表控件之ChartControl用法指南①

    " 引言部分,总领全篇文章的中心内容." WPF的DevExpress ChartControl是一种功能强大的可视化工具,可帮助您将数据显示为二维或伪三维条形图.区域.线和许多其 ...

  7. DevE控件chartControl 基本用法

    chartControl数据绑定 根据数据表的不同建立 一.如果X轴是列名就如下: DataView dv = new DataView(ds.Tables[0]);             char ...

  8. Winform + Devexpress 实现看板效果

    环境:VS2019.Sql Server R2 2008.Devexpress ChartControl.layoutControl 最终效果: 1.设置背景图(LayoutControl) this ...

  9. 【原】为DevExpress的ChartControl添加Y轴控制 和 GridControl中指定列添加超级链接

    一.控制ChartControl的Y轴范围 使用Devexpress中的CharControl控件,需要控制AxisY轴的显示范围,需要使用该控件的BoundDataChanged事件,具体代码如下: ...

  10. WinForm DevExpress使用-(ChartControl控件绘制图表)

    最近因为公司项目需要用到WinForm的DecExpress控件,在这里把一些使用方法总结一下. DevExpress中有一个专门用来绘制图表的插件ChartControl,可以绘制折线图.饼状图.柱 ...

最新文章

  1. 【总结+计划】2015一月份总结+2015二月份计划——全栈实践
  2. 关于阻塞I/O 非阻塞I/O 同步I/O 异步I/O epoll select的学习
  3. chrome控制台如何把vw显示成px_chrome用不好,BUG改到老,这些chrome 浏览器使用技巧你需要掌握...
  4. 【IT旁观者】喜羊羊与唐三藏
  5. 信息学奥赛一本通(1229:电池的寿命)
  6. oracle的order by排序中空字符串处理方法
  7. asp.net mvc 实现上传文件带进度条
  8. 通过json发送html代码_Python简单程序爬取天气信息,定时以邮件发送给朋友
  9. 【数据结构】班级管理系统
  10. IDAPython安装
  11. 无人驾驶技术——雷达Clutter, CFAR,AoA
  12. postgreSQL / MySQL / 达梦 时间查询 ,获取近几天、一周、一月、季度、一年时间内的数据
  13. 科学计算机如何将角度换成小数点,角度计算器-卡西欧计算器上D(角度制)怎么切换RT– 手机爱问...
  14. Spring Cloud与Dubbo怎么选择?
  15. linux 7.5防火墙配置,Centos7.5 firewalld防火墙配置
  16. 高德导航过程中实时获取道路信息
  17. 迪斯尼电影经典台词精选
  18. 今天生日,感概人生!
  19. ubuntu远程无法连接到服务器配置,解决ubuntu无法远程连接
  20. 拒不协助执行会有什么后果?

热门文章

  1. 页面加载过程中触发的事件
  2. 批量转换Caltech Pedestrian Dataset中annotations中的.vbb文件为.txt文件
  3. 曲线任意里程中边桩坐标正反算(CASIO fx-4800P计算器)程序
  4. vue如何设置视频封面_vue怎么制作朋友圈封面视频 vue制作朋友圈视频方法
  5. arcgis之建模实现矢量图层批量按属性分割导出Kmz文件
  6. Linux基础入门之VM和centos的安装使用
  7. git可视化工具Sourcetree使用全攻略(包括各种git冲突解决)
  8. 人工智能的常用十种算法
  9. JAVA之JDBC数据库连接池(超详细介绍)
  10. 【语料库】语料库资源汇总