1、  主题修改

引用  xmlns:core=http://schemas.devexpress.com/winfx/2008/xaml/core

在Grid中添加core:ThemeManager.ApplicationTheme ="DXStyle"

主页引用一次即可

2、  坐标倒影

<dxc:ChartControl Name="chartControl1" >

<dxc:ChartControl.Diagram>

<dxc:XYDiagram2D>

<!--倒影-->

<dxc:XYDiagram2D.DefaultPane>

<dxc:Pane MirrorHeight="100" />

</dxc:XYDiagram2D.DefaultPane>

<dxc:XYDiagram2D.Series>

</dxc:XYDiagram2D.Series>

</dxc:XYDiagram2D>

</dxc:ChartControl.Diagram>

<dxc:ChartControl.Legend>

<dxc:Legend />

</dxc:ChartControl.Legend>

</dxc:ChartControl>

3、  动态加载效果

<dxc:ChartControl Name="chartControl1" <!--特效--> EnableAnimation="True" >

EnableAnimation:激活动画,True 或者 False。True是激活;False是不激活。

4、  透明度

<dxc:BubbleSeries2D DisplayName="Second Series" Transparency="0.1">

Transparency:透明度,范围0~1。0:不透明;1是完全透明。并非所有类型都支持透明

5、  饼图空心特效

<dxc:PieSeries2D <!—空心大小,0为实心--> HoleRadiusPercent="20">

6、  饼图点击某区域实现分离动态特效滚动特效

在后台代码添加

const int clickDelta = 200;

DateTime mouseDownTime;

bool rotate;

Point startPosition;

bool IsClick(DateTime mouseUpTime)

{

return (mouseUpTime - mouseDownTime).TotalMilliseconds < clickDelta;

}

double CalcAngle(Point p1, Point p2)

{

Point center = new Point(chartControl1.Diagram.ActualWidth / 2, chartControl1.ActualHeight / 2);

Point relativeP1 = new Point(p1.X - center.X, p1.Y - center.Y);

Point relativeP2 = new Point(p2.X - center.X, p2.Y - center.Y);

double angleP1Radian = Math.Atan2(relativeP1.X, relativeP1.Y);

double angleP2Radian = Math.Atan2(relativeP2.X, relativeP2.Y);

double angle = (angleP2Radian - angleP1Radian) * 180 / (Math.PI * 2);

if (angle > 90)

angle = 180 - angle;

else if (angle < -90)

angle = 180 + angle;

return angle;

}

void chart_MouseUp(object sender, MouseButtonEventArgs e)

{

ChartHitInfo hitInfo = chartControl1.CalcHitInfo(e.GetPosition(chartControl1));

rotate = false;

if (hitInfo == null || hitInfo.SeriesPoint == null || !IsClick(DateTime.Now))

return;

double distance = PieSeries.GetExplodedDistance(hitInfo.SeriesPoint);

Storyboard storyBoard = new Storyboard();

DoubleAnimation animation = new DoubleAnimation();

animation.Duration = new Duration(new TimeSpan(0, 0, 0, 0, 300));

animation.To = distance > 0 ? 0 : 0.3;

storyBoard.Children.Add(animation);

Storyboard.SetTarget(animation, hitInfo.SeriesPoint);

Storyboard.SetTargetProperty(animation, new PropertyPath(PieSeries.ExplodedDistanceProperty));

storyBoard.Begin();

}

void chart_MouseDown(object sender, MouseButtonEventArgs e)

{

mouseDownTime = DateTime.Now;

Point position = e.GetPosition(chartControl1);

ChartHitInfo hitInfo = chartControl1.CalcHitInfo(position);

if (hitInfo != null && hitInfo.SeriesPoint != null)

{

rotate = true;

startPosition = position;

}

}

void chart_MouseMove(object sender, MouseEventArgs e)

{

Point position = e.GetPosition(chartControl1);

ChartHitInfo hitInfo = chartControl1.CalcHitInfo(position);

if (hitInfo == null)

return;

if (rotate && !IsClick(DateTime.Now))

{

PieSeries2D series = chartControl1.Diagram.Series[0] as PieSeries2D;

double angleDelta = CalcAngle(startPosition, position);

startPosition = position;

}

}

void ChartsDemoModule_ModuleAppear(object sender, RoutedEventArgs e)

{

chartControl1.Animate();

}

void rblSweepDirection_SelectedIndexChanged(object sender, RoutedEventArgs e)

{

if (chartControl1 != null)

chartControl1.Animate();

}

void chart_QueryChartCursor(object sender, QueryChartCursorEventArgs e)

{

ChartHitInfo hitInfo = chartControl1.CalcHitInfo(e.Position);

if (hitInfo != null && hitInfo.SeriesPoint != null)

e.Cursor = Cursors.Hand;

}

在前台添加

<dxc:ChartControl Name="chartControl1" MouseLeftButtonUp="chart_MouseUp" MouseLeftButtonDown="chart_MouseDown" <!—边框厚度,0是没有-->BorderThickness="0"
MouseMove="chart_MouseMove" QueryChartCursor="chart_QueryChartCursor">

7、  颜色区分(并非所有有效)

<dxc:PointSeries2D <!—是否区分颜色。True是区分;False是不区分-->ColorEach="True" <!—点的大小-->MarkerSize="20">

8、  参数标签

<dxc:ChartControl.CrosshairOptions>

<dxc:CrosshairOptions

<!—X轴坐标值标签-->ShowArgumentLabels="True"

<!—X轴横坐标值基准线-->ShowArgumentLine="True"

<!—Y轴纵坐标值标签-->ShowValueLabels="True"

<!—Y轴横坐标值基准线-->ShowValueLine="True" />

</dxc:ChartControl.CrosshairOptions>

 

9、  是否显示点标签

<dxc:AreaStackedSeries2D DisplayName="First Series" <!—点标签。True为显示;False为不显示-->LabelsVisibility="True">

 

10、 点标签样式

<dxc:SimpleDiagram2D.Series>

<dxc:PieSeries2D HoleRadiusPercent="20" LabelsVisibility="True">

<dxc:PieSeries2D.PointOptions >

<dxc:PointOptions

<!—标签显示内容。ArgumentAndValues表示名称和值-->

PointView="ArgumentAndValues">

<dxc:PointOptions.ValueNumericOptions>

<dxc:NumericOptions

<!—标签值格式。General为一般;Scientific为科学计数法;Percent为百分比;Currency为¥;-->

Format="Percent"

<!—精确小数点尾数。0为整数-->

Precision="2" />

</dxc:PointOptions.ValueNumericOptions>

</dxc:PointOptions>

</dxc:PieSeries2D.PointOptions>

</dxc:SimpleDiagram2D.Series>

</dxc:PieSeries2D>

11、 图例格式

<dxc:SimpleDiagram2D.Series>

<dxc:PieSeries2D HoleRadiusPercent="20" LabelsVisibility="True">

<dxc:PieSeries2D.LegendPointOptions>

<dxc:PointOptions PointView="ArgumentAndValues">

<dxc:PointOptions.ValueNumericOptions>

<dxc:NumericOptions Format="Percent" Precision="2"/>

</dxc:PointOptions.ValueNumericOptions>

</dxc:PointOptions>

</dxc:PieSeries2D.LegendPointOptions>

</dxc:SimpleDiagram2D.Series>

</dxc:PieSeries2D >

12、 调色板

<dxc:ChartControl.Palette>

<!—不同模板,应用时只能有一个有效-->

<dxc:NatureColorsPalette/>

<dxc:PastelKitPalette/>

<dxc:InAFogPalette/>

<dxc:TerracottaPiePalette/>

<dxc:NorthernLightsPalette/>

<dxc:ChameleonPalette/>

<dxc:TheTreesPalette/>

<dxc:OfficePalette/>

<dxc:DXChartsPalette/>

<dxc:CustomPalette/>

</dxc:ChartControl.Palette>

DevExpress Silverlight DXChart特效总结的更多相关文章

  1. devexpress控件layoutview特效之一旋转木马的实现

    1.devexpress有很多很好的特效,最近做了个旋转木马的特效,给大家分享下.效果图如下: 2.这里的控件为gridcontrol,里面的view为layoutview.数据绑定的代码与其他gri ...

  2. Silverlight & Blend动画设计系列六:动画技巧(Animation Techniques)之对象与路径转化、波感特效

    当我们在进行Silverlight & Blend进行动画设计的过程中,可能需要设计出很多效果不一的图形图像出来作为动画的基本组成元素.然而在设计过程中可能会出现许多的问题,比如当前绘制了一个 ...

  3. Silverlight 2.5D RPG游戏技巧与特效处理:(五)HLSL渲染动画

    原文:Silverlight 2.5D RPG游戏技巧与特效处理:(五)HLSL渲染动画 或许大家依旧对上一节中的“黑夜”及“梦回过去”记忆犹新,追问下去HLSL到底是何方神圣能实现如此炫酷之效果?层 ...

  4. WPF/Silverlight深度解决方案:(九)HLSL自定义渲染特效之完美攻略(下)

    原文:WPF/Silverlight深度解决方案:(九)HLSL自定义渲染特效之完美攻略(下) 本想只用两节来完成关于HLSL自定义渲染相关知识的讲解,鉴于最近非常的多的朋友对此相当感兴趣,想知道最多 ...

  5. WPF/Silverlight深度解决方案:(七)HLSL自定义渲染特效之完美攻略(中)

    原文:WPF/Silverlight深度解决方案:(七)HLSL自定义渲染特效之完美攻略(中) 通过上一节的解说,大家是否已经对HLSL有了较深刻的认识和理解,HLSL的渲染不仅仅局限于静态处理,通过 ...

  6. WPF/Silverlight深度解决方案:(六)HLSL自定义渲染特效之完美攻略(上)

    原文:WPF/Silverlight深度解决方案:(六)HLSL自定义渲染特效之完美攻略(上) Shader Effect种位图特效及2种渲染特效,而Silverlight中仅有这2种渲染特效: Bl ...

  7. Silverlight 2.5D RPG游戏技巧与特效处理:(十一)AI系统

    Silverlight 2.5D RPG游戏技巧与特效处理:(十一)AI系统 作者: 深蓝色右手  来源: 博客园  发布时间: 2011-04-19 11:18  阅读: 1282 次  推荐: 0 ...

  8. Devexpress

    1.隐藏最上面的GroupPanel gridView1.OptionsView.ShowGroupPanel=false; 2.得到当前选定记录某字段的值 sValue=Table.Rows[gri ...

  9. DevExpress GridControl使用方法

    一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 (1).gridView.AddN ...

随机推荐

  1. Shell-15-脚本练习

    批量生成随机字符串文件名 # 用for循环在 /test 目录下批量创建10个html文件,其中每个文件需要包含10个随机小写字符加固定字符串 alnk #!/bin/bash ########### ...

  2. Sqli-Labs less17-19

    less-17 前置基础知识: UPDATEXML (XML_document, XPath_string, new_value); 第一个参数:XML_document是String格式,为XML文 ...

  3. NOIP 模拟 $33\; \rm Hunter$

    题解 \(by\;zj\varphi\) 结论题. 对于 \(1\) 猎人,他死的期望就是有多少个死在它前面. 那么对于一个猎人,它死在 \(1\) 前的概率就是 \(\frac{w_i}{w_i+w ...

  4. springboot 2.0 整合 RestTemplate

    首先导入springboot 的 web 包 <dependency> <groupId>org.springframework.boot</groupId> &l ...

  5. spring学习日志三

    一.回顾 1.1 依赖注入的方式. set方法来注入 <property name="属性名" /> 构造方法来注入<construtor-arg index=& ...

  6. 地球坐标系(WGS-84)转火星坐标系(GCJ)

    /** * 单点坐标纠偏 */ var pi = 3.14159265358979324; var a = 6378245.0; var ee = 0.00669342162296594323; va ...

  7. Maven脑图

    转自:https://segmentfault.com/a/1190000017832792 参考:https://www.cnblogs.com/mzywucai/p/11053341.html

  8. CompletionService简介、原理以及小案例

    博客1:http://www.oschina.net/question/12_11255 博客2: CompletionService简介 CompletionService与ExecutorServ ...

  9. Python创建二维列表的正确姿势

    Python创建二维列表的正确姿势 简介 Python中没有数组,使用list结构代替,并且list结构的功能更加强大: 支持动态扩容,无需担心元素过量 对list内的元素类型不做一致性约束 提供丰富 ...

  10. 五分钟搞定Docker安装ElasticSearch

    前言 项目准备上ElasticSearch,为了后期开发不卡壳只能笨鸟先飞,在整个安装过程中遇到以下三个问题. Docker安装非常慢 ElasticSearch-Head连接出现跨域 Elastic ...