Steema Issues Database

Note: This database is for bugs and wishes only. For technical support help, if you are a customer please visit our online forums;
otherwise you can use StackOverflow.
Before using this bug-tracker we recommend a look at this document, Steema Bug Fixing Policy.



Bug 1795

Summary: MarksTip tool 'spinning' & not correctly rendering value with 3D stacked Bar series.
Product: .NET TeeChart Reporter: christopher ireland <chris>
Component: ToolsAssignee: Steema Issue Manager <issuemanager>
Status: RESOLVED NOTABUG    
Severity: regression    
Priority: ---    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows   
Chart Series: --- Delphi / C++ Builder RAD IDE Version:

Description christopher ireland 2017-02-21 05:48:36 EST
Code to produce:

    public Form1()
    {
      InitializeComponent();
      CreateChart();
      InitializeChart();
    }

    TChart tChart1 = new TChart(false);

    private void CreateChart()
    {
      tChart1.Dock = DockStyle.Fill;
      splitContainer1.Panel2.Controls.Add(tChart1);
    }

    private void InitializeChart()
    {
      tChart1.Aspect.Chart3DPercent = 75;

      Bar series1 = new Bar(tChart1.Chart);
      series1.MultiBar = MultiBars.Stacked;
      series1.FillSampleValues(2);

      Bar series2 = new Bar(tChart1.Chart);
      series2.MultiBar = MultiBars.Stacked;
      series2.FillSampleValues(2);


      MarksTip seriesMarksTip1 = new MarksTip(tChart1.Chart);
      seriesMarksTip1.Series = series1;
      seriesMarksTip1.GetText += MarkHandler;

      MarksTip seriesMarksTip2 = new MarksTip(tChart1.Chart);
      seriesMarksTip2.Series = series2;
      seriesMarksTip2.GetText += MarkHandler;

      tChart1[0].Transparency = 20;
      tChart1[1].Transparency = 20;
    }

    private void MarkHandler(Steema.TeeChart.Tools.MarksTip sender, Steema.TeeChart.Tools.MarksTipGetTextEventArgs e)
    {
      System.Diagnostics.Debug.WriteLine(sender.Series.Title);
    }


Video screenshot of the issue:
https://www.screencast.com/t/h3bh63s02F
Comment 1 christopher ireland 2017-02-21 06:12:55 EST
The resolution to this issue is to use one MarksTip and not two, e.g.

    private void InitializeChart()
    {
      tChart1.Aspect.Chart3DPercent = 75;

      Bar series1 = new Bar(tChart1.Chart);
      series1.MultiBar = MultiBars.Stacked;
      series1.FillSampleValues(2);

      Bar series2 = new Bar(tChart1.Chart);
      series2.MultiBar = MultiBars.Stacked;
      series2.FillSampleValues(2);


      MarksTip seriesMarksTip1 = new MarksTip(tChart1.Chart);
      //seriesMarksTip1.Series = series1;
      seriesMarksTip1.GetText += MarkHandler;

      //MarksTip seriesMarksTip2 = new MarksTip(tChart1.Chart);
      //seriesMarksTip2.Series = series2;
      //seriesMarksTip2.GetText += MarkHandler;

      tChart1[0].Transparency = 20;
      tChart1[1].Transparency = 20;
    }

    private void MarkHandler(Steema.TeeChart.Tools.MarksTip sender, Steema.TeeChart.Tools.MarksTipGetTextEventArgs e)
    {
      double d = Convert.ToDouble(e.Text);

      if(tChart1[0].YValues.IndexOf(d) > -1)
        System.Diagnostics.Debug.WriteLine(tChart1[0].Title);
      else if(tChart1[1].YValues.IndexOf(d) > -1)
       System.Diagnostics.Debug.WriteLine(tChart1[1].Title);
    }

which gives us the following screenvideo:

https://www.screencast.com/t/Q2iGMydHquil

The MarksTip tool is designed to work with multiple series by default, and only works with single series when the Series property is non-null.