263598702 发表于 2019-7-5 11:01:38

flexreport中chart设置两个series显示不正确问题

报表中放入一个flexchart,给这个chart加入两个series,一个charttype设置Line,另外一个设置Scatter,运行时第二个charttype不正确,第一个charttype会覆盖第二个的设置。附件为我写的一个demo.

另外我想实现报表中flexchart某段数据标红的效果:
就是以下代码的效果,不知是否可以实现

private void Series_SymbolRendering(object sender, C1.WPF.Chart.RenderSymbolEventArgs e)
      {
            if (e.Index > 0)
            {
                foreach (var item in _flexChartSelectRange) {
                  if (chart.PointToData(e.Point).X >= item.Lower && chart.PointToData(e.Point).X <= item.Upper)
                  {
                        e.Engine.SetFill(new SolidColorBrush(Colors.Red));
                        e.Engine.SetStroke(new SolidColorBrush(Colors.Red));
                  }
                }
            }
      }

Richard.Ma 发表于 2019-7-5 14:39:43

你的两个series绑定了两个数据,导致第二个series没有正常显示出来,可以用如下的方式绑定一个数据源

report.DataSources.Add(new DataSource { Name = "Ds1", Recordset = new List<FitModel> { new FitModel { x = 1, y = 10, y1=10 }, new FitModel { x = 2, y = 11, y1 = 22 }, new FitModel { x = 3, y = 12, y1 = 24 }, new FitModel { x = 4, y = 13, y1 = 20 }, new FitModel { x = 5, y = 14, y1 = 20 }, new FitModel { x = 6, y = 15, y1 = 20 }, new FitModel { x = 7, y = 16, y1 = 20 }, new FitModel { x = 8, y = 17, y1 = 20 }, new FitModel { x = 9, y = 18, y1 = 20 }, new FitModel { x = 10, y = 19, y1 = 20 }, new FitModel { x = 11, y = 20, y1 = 20 }, new FitModel { x = 12, y = 21, y1 = 20 }, } });

    public class FitModel
    {
      public int x { get; set; }
      public int y { get; set; }
      public int y1 { get; set; }
    }

263598702 发表于 2019-7-5 21:58:25

好的我知道了,那后面我说的那个报表中flexchart某段数据红色显示的功能可以实现吗?

Richard.Ma 发表于 2019-7-6 00:56:05

这个在报表中没法实现,因为无法使用相关的事件

263598702 发表于 2019-7-8 09:33:32

好的谢谢

Richard.Ma 发表于 2019-7-8 12:31:15

不客气
页: [1]
查看完整版本: flexreport中chart设置两个series显示不正确问题