关于C1FlexChart 颜色的问题
C1FlexChart画柱状图,我用的数据绑定,比如总共有12条数据,项目中有个需求,如果某一个数据超过上限,那么这一数据对应的柱状图要求是红色,其他不变色,请问这个怎么实现?而且现在用数据绑定,在多线程重对这个绑定数据进行修改。SymbolRendering事件会在绘制每一个symbol时触发,也就是每个柱子绘制都会触发
你可以在这里判断,当该项目的值超过上限,给重新设置engine的样式。
甚至于,你也可以自己来绘制(注释的代码)
private void Flexchart_SymbolRendering(object sender, C1.WPF.Chart.RenderSymbolEventArgs e)
{
if (((Point)e.Item).X == 3000)
{
e.Engine.SetFill(new SolidColorBrush(Colors.Red));
e.Engine.SetStroke(new SolidColorBrush(Colors.Red));
e.Engine.SetStrokeThickness(2000);
//e.Engine.DrawRect(e.Point.X - 5, e.Point.Y, 10, chart.PlotRect.Bottom- e.Point.Y);
}
} 谢谢,经常刷新画面会不会变慢呀,比较担心性能问题 取决于你在这个事件中具体执行的代码,理论上来说影响应该并不大,除非你的数据量特别大(至少1W以上。)
建议实际测试一下。
页:
[1]