Devexpress TextAnnotation
private void BindData()
{
chartControl1.AnnotationRepository.Clear();
chartControl1.Series.Clear();
TextAnnotation text1 = new TextAnnotation();
TextAnnotation text2 = new TextAnnotation();
PaneAnchorPoint panel1 = new PaneAnchorPoint();
PaneAnchorPoint panel2 = new PaneAnchorPoint();
RelativePosition relPos1 = new RelativePosition();
relPos1.Angle = ;
Series series1 = new Series("HELLO",ViewType.Line); foreach (var item in GetDate())
{
if (item.v1 == )
{
series1.Points.Add(new SeriesPoint(item.d1, item.v1));
RelativePosition re = new RelativePosition();
re.Angle = ;
TextAnnotation vs = new TextAnnotation();
vs.Lines = new string[] { "在该时间段出现故障" };
vs.RuntimeMoving = true;
PaneAnchorPoint panes = new PaneAnchorPoint();
panes.AxisXCoordinate.AxisValueSerializable = item.d1.ToString();
panes.AxisYCoordinate.AxisValueSerializable = item.v1.ToString();
vs.AnchorPoint = panes;
vs.ShapePosition = re;
this.chartControl1.AnnotationRepository.Add(vs);
} if (item.v1 > )
{
series1.Points.Add(new SeriesPoint(item.d1, item.v1));
TextAnnotation vs = new TextAnnotation();
vs.Lines=new string[]{"在该时间段出现报警"} ;
vs.RuntimeMoving = true;
PaneAnchorPoint panes = new PaneAnchorPoint();
panes.AxisXCoordinate.AxisValueSerializable = item.d1.ToString();
panes.AxisYCoordinate.AxisValueSerializable = item.v1.ToString();
vs.AnchorPoint = panes;
vs.ShapePosition = relPos1;
this.chartControl1.AnnotationRepository.Add(vs);
}
else
{
series1.Points.Add(new SeriesPoint(item.d1, item.v1));
} }
//panel1.AxisXCoordinate.AxisValueSerializable = DateTime.Now.AddDays(-1).ToString();
//panel1.AxisYCoordinate.AxisValueSerializable = "22";
//text1.AnchorPoint = panel1;
//text1.Name = "Text Annotation 1";
//text1.Lines = new string[] {"A曲线"};
//relPos1.Angle = -228.15794479643927;
//relPos1.ConnectorLength = 102.68641584941993;
//text1.ShapePosition = relPos1; //panel2.AxisXCoordinate.AxisValueSerializable = DateTime.Now.AddDays(-2).ToString();
//panel2.AxisYCoordinate.AxisValueSerializable = "16";
//text2.AnchorPoint = panel2;
//text2.Name = "Text Annotation 1";
//text2.Lines = new string[] { "B曲线" };
//relPos1.Angle = -228.15794479643927;
//relPos1.ConnectorLength = 202.68641584941993;
//text2.ShapePosition = relPos1;
//this.chartControl1.AnnotationRepository.AddRange(new DevExpress.XtraCharts.Annotation[] {
//text2,text1});
chartControl1.Series.Add(series1);
} private List<lx> GetDate()
{
List<lx> ls = new List<lx>();
ls.Add(new lx() { d1 = DateTime.Now.AddDays(-), v1 = });
ls.Add(new lx() { d1 = DateTime.Now.AddDays(-), v1 = });
ls.Add(new lx() { d1 = DateTime.Now.AddDays(-), v1 = });
ls.Add(new lx() { d1 = DateTime.Now.AddDays(-), v1 = });
ls.Add(new lx() { d1 = DateTime.Now.AddDays(-), v1 = });
return ls;
}
Devexpress TextAnnotation的更多相关文章
- 初识Devexpress ChartControl 之 动态添加stepline及TextAnnotation
最近在用devexpress 第三方软件做项目. devexpress 的控件使用简单.功能强大.类型丰富.界面优美.扩展性强.今天主要是动态生成了一条StepLine.生成后的效果(能力不强,所以做 ...
- 在DevExpress程序中使用GridView直接录入数据的时候,增加列表选择的功能
在我上篇随笔<在DevExpress程序中使用Winform分页控件直接录入数据并保存>中介绍了在GridView以及在其封装的分页控件上做数据的直接录入的处理,介绍情况下数据的保存和校验 ...
- DevExpress - 使用 GaugeControl 标尺组件制作抽奖程序 附源码
前不久,公司举办了15周年庆,其中添加了一个抽奖环节,要从在读学员中随机抽取幸运学员,当然,这个任务就分到了我这里. 最后的效果如下,启动有个欢迎页面,数据是来自Excel的,点击开始则上面的学号及姓 ...
- 图解DevExpress RichEditControl富文本的使用,附源码及官方API
9点半了,刚写到1.2. 该回家了,明天继续写完. 大家还需要什么操作,留言说一下,没有的我明天继续加. 好久没有玩DevExpress了,今天下载了一个玩玩,发现竟然更新到14.2.5了..我去 ...
- DevExpress学习系列(控件篇):GridControl的基本应用
一般属性设置 不显示分组框:Gridview->Option View->Show Group Panel=false 单元格不可编辑:gridcontrol -->gridview ...
- 在DevExpress程序中使用Winform分页控件直接录入数据并保存
一般情况下,我们都倾向于使用一个组织比较好的独立界面来录入或者展示相关的数据,这样处理比较规范,也方便显示比较复杂的数据.不过在一些情况下,我们也可能需要直接在GridView表格上直接录入或者修改数 ...
- 在DevExpress程序中使用TeeList控件以及节点查询的处理
在很多情况下,我们需要通过树列表进行数据的展示,如一些有层次关系的数据,通过有层级的展示,能够使用户更加直观查看和管理相关的数据.在一般Winform开发的情况下,可以使用微软的TreeView控件, ...
- 在DevExpress程序中使用内置的图标构建美观的界面元素
在我们一般的程序中,为一般的界面元素添加一定的图标展示,有助于提升界面的整体的美观.结合排版布局,以及固定场景的图标,往往给用户非常好的直观感受:统一.美观.易理解.因此在一般的程序界面中,都尽量在略 ...
- 在DevExpress程序中使用条形码二维码控件,以及进行报表打印处理
在很多业务系统里面,越来越多涉及到条形码.二维码的应用了,不管在Web界面还是WInform界面都需要处理很多物料相关的操作,甚至很多企业为了减少录入错误操作,为每个设备进行条形码.二维码的标签,直接 ...
随机推荐
- UI控件(UISlider)
@implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; UISlider* slider = [[UISli ...
- iOS开发系列--C语言之预处理
概述 大家都知道一个C程序的运行包括编译和链接两个阶段,其实在编译之前预处理器首先要进行预处理操作,将处理完产生的一个新的源文件进行编译.由于预处理指令是在编译之前就进行了,因此很多时候它要比在程序运 ...
- 在C#代码中应用Log4Net(四)在Winform和Web中捕获全局异常
毕竟人不是神,谁写的程序都会有bug,有了bug不可怕,可怕的是出错了,你却不知道错误在哪里.所以我们需要将应用程序中抛出的所有异常都记录起来,不然出了错,找问题就能要了你的命.下面我们主要讨论的是如 ...
- .NET中提升UAC权限的方法总结
[题外话] 从Vista开始,由于增加了UAC(用户账户控制,User Account Control)功能,使得管理员用户平时不再拥有能控制所有功能的管理员权限了,所以在调用很多比较重要的功能时需要 ...
- VBA批量查找和复制文件
Function findAndCopy(srcFile As String, destFile As String, cmdFile As String) Dim WSH As Object, wE ...
- AutoMapper 最佳实践
AutoMapper 是一个基于命名约定的对象->对象映射工具. 只要2个对象的属性具有相同名字(或者符合它规定的命名约定),AutoMapper就可以替我们自动在2个对象间进行属性值的映射.如 ...
- Self Host模式下的ASP. NET Web API是如何进行请求的监听与处理的?
构成ASP.NET Web API核心框架的消息处理管道既不关心请求消息来源于何处,也不需要考虑响应消息归于何方.当我们采用Web Host模式将一个ASP.NET应用作为目标Web API的宿主时, ...
- 学习Cassandra的开源电子书(中英文版)
学习Cassandra的开源电子书(中英文版)发布啦:http://teddymaef.github.io/learncassandra/ 之前发布了英文版,现在包含中文版了. 学习Cassandra ...
- JS 实现"可读"字符串转换成"二进制的01"字符串
问题起源 看过一个漫画, 两位程序员在办公司交流, 可是说的语言却是010101类似的字符串.周围人很是惊异.计算机的世界,确实是由01组成的.今天突然想实现这个编码转换. 解决思路 学过C语言的都知 ...
- Service基础使用
Service基础使用 之前的文章一直介绍Activity的使用,很多知识和用法单一的配合Activity使用,这次将总结Android四大组件之二--Service. 本文将要介绍以下内容: Ser ...