1.功能 实现图表的数据绑定,动态绑定,属性更改绑定. 本文提供了一种思路. 2.原理 使用canvas绘制,使用反射来确定属性的绑定. 3.效果: 柱状图效果: 曲线图效果: 感谢阅读. 源码地址:  https://files.cnblogs.com/files/lizhijian/ChartBar.zip…
WPF 自定义柱状图 当前的Telerik控件.DevExpress控件在图表控件方面做得不错,但是有时项目中需要特定的样式,不是只通过修改图表的模板和样式就能实现的. 或者说,通过修改当前的第三方控件以达到项目中UI的界面效果,花费的时间远比重新自定义一个控件要长得多! 所以直接自定义柱状图吧~下面是柱状图的效果: Git代码下载:https://github.com/Kybs0/BarChartControl 1.新建一个UserControl,在界面上添加一些简单的布局 <UserCont…
原文:WPF 自定义的图表(适用大量数据绘制)下 上一篇文章中讲了WPF中自定义绘制大量数据的图标,思路是先将其绘制在内存,然后一次性加载到界面,在后续的调试过程中,发现当数据量到达10W时,移动鼠标显示数据有明显的延迟.经过思考,我采用了以下两个办法解决这个问题: 1.将数据显示的文本与图表分离,作为一个单独的canvas,这样,显示文本数据的时候就不需要重画图表了 2.计算鼠标移动速度,当移动速度过快时,不绘制文本,减少数据文本的绘制频率 3.使用START_INDEX 和 END_INDE…
原文:WPF 自定义的图表(适用大量数据绘制) 在WPF中绘制图表比较简单,有很多的第三方控件,但是在绘制大量数据的时候,就显得有些吃力,即便是自己用StreamGeometry画也达不到理想的效果,要达到绘制大量数据而不会顿卡现象,只有一个途径,就是首先在内存中绘制好所有的图形,再一次性加载(或者说绘制)到界面控件Canvas或Grid中. 废话不多说,直接看效果吧 选中放大效果 源代码: using System; using System.Collections.Generic; usin…
自定义可左右滑动.拖拽滑动的平面柱状图 在做这种样式控件之前,可先浏览我之前预研的控件: A.自定义左右滑动ScrollViewer(可拖动滑动) B.自定义Bar柱状图 OK,现在说下控件具体设计过程: 1)采用Grid布局,这样可以将Y轴的标题设置平均高度,X轴的柱子也可以平均. 当然X轴也会存在一个问题,当数据较少时,只有俩个柱子难道就布满界面? 很简单,在Grid中多添加一个ColumnDefinition就行了,柱子的宽度设置成可配置,额外的一个设置成默认填充. 2)Bar采用Radi…
自定义可左右滑动.拖拽滑动的平面柱状图 在做这种样式控件之前,可先浏览我之前预研的控件: A.自定义左右滑动ScrollViewer(可拖动滑动) B.自定义Bar柱状图 OK,现在说下控件具体设计过程: 1)采用Grid布局,这样可以将Y轴的标题设置平均高度,X轴的柱子也可以平均. 当然X轴也会存在一个问题,当数据较少时,只有俩个柱子难道就布满界面? 很简单,在Grid中多添加一个ColumnDefinition就行了,柱子的宽度设置成可配置,额外的一个设置成默认填充. 2)Bar采用Radi…
chart在报表中经常使用到,他可以使报表结果更加直观的展现给用户.salesforce支持VF和apex代码来更好的展示chart. chart分类:常用的图表样式有饼状图,柱状图,折线图,条形图,表盘图,雷达图,及线性系列图表等. 图表根据样式不同显示的内容不同,大概包含以下部分: 1. X,Y坐标; 2. 标题; 3. 内容及所含数量(data); 4.移入上面显示的相关提示信息(tip); 5.说明(legend). 注:这里只是总结大概的部分,显示的部分因图表样式而有相应的差距,cha…
wpf 自定义圆形按钮 效果图 默认样式 获取焦点样式 点击样式 下面是实现代码: 一个是自定义控件类,一个是控件类皮肤 using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.…
WPF自定义窗口基类时,窗口基类只定义.cs文件,xaml文件不定义.继承自定义窗口的类xaml文件的根节点就不再是<Window>,而是自定义窗口类名(若自定义窗口与继承者不在同一个命名空间,还得加上命名空间),继承自定义窗口类后台代码也得修改为继承自自定义窗口exp: //继承Window类的自定义窗口类 namespace WPF_Study.Entity { using System.Windows; public class WindowBase:Window { private c…
自定义图表y轴的最大值和最小值 用户可以使用FusionCharts图表中<chart>元素的yAxisMaxValue和yAxisMinValue属性设置图表限制. 示例: <chart yAxisMinValue='0' yAxisMaxValue='100' ... > 如何设置图表y轴的最小值(不是默认值0) 用户可以将Y轴最小值设置为0或者是基于图表提供的值.可以按照下面的方式设置setAdaptiveYMin属性: <chart caption='Monthly…