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 566

Summary: Adding data from a DataSet or DataTable not working.
Product: .NET TeeChart Reporter: narcís calvet <narcis>
Component: AndroidAssignee: Steema Issue Manager <issuemanager>
Status: RESOLVED FIXED    
Severity: major CC: narcis
Priority: High    
Version: TeeChart.NET 2013 4.1.2013.11080   
Target Milestone: ---   
Hardware: PC   
OS: Windows   
URL: http://stackoverflow.com/questions/21043356/how-to-fill-series-data-in-candle-chart-in-xamarin-teechart-and-monotouch
Chart Series: --- Delphi / C++ Builder RAD IDE Version:

Description narcís calvet 2014-02-10 07:28:58 EST
Code below doesn't work in Xamarin.Android but works in a WinForms application.

    public DataSet DataSet_Obj = new DataSet();
    public DataRow DataRow_Obj;

    public Steema.TeeChart.TChart TChart1;
    public Steema.TeeChart.Styles.Candle Tag_Serie_Candle;

    protected override void OnCreate(Bundle bundle)
    {
      base.OnCreate(bundle);
      RequestWindowFeature(WindowFeatures.NoTitle);

      TChart1 = new Steema.TeeChart.TChart(this.ApplicationContext);
      Steema.TeeChart.Themes.BlackIsBackTheme myTheme = new Steema.TeeChart.Themes.BlackIsBackTheme(TChart1.Chart);
      myTheme.Apply();

      LoadChart();
	  
      SetContentView(TChart1);
    }

    private void LoadChart()
    {
      DataSet_Obj.Tables.Add("CandleTable");
      DataSet_Obj.Tables["CandleTable"].Columns.Add(new DataColumn("Date", System.Type.GetType("System.DateTime")));
      DataSet_Obj.Tables["CandleTable"].Columns.Add(new DataColumn("Open", System.Type.GetType("System.Double")));
      DataSet_Obj.Tables["CandleTable"].Columns.Add(new DataColumn("Close", System.Type.GetType("System.Double")));
      DataSet_Obj.Tables["CandleTable"].Columns.Add(new DataColumn("High", System.Type.GetType("System.Double")));
      DataSet_Obj.Tables["CandleTable"].Columns.Add(new DataColumn("Low", System.Type.GetType("System.Double")));

      for (int i = 0; i < 5; i++)
      {
        DataRow_Obj = DataSet_Obj.Tables["CandleTable"].NewRow();
        DataRow_Obj["Date"] = DateTime.Now.AddDays(i);//Convert.ToDateTime("01/01/2005 10:00:00");
        DataRow_Obj["Low"] = 120;
        DataRow_Obj["Close"] = 130;
        DataRow_Obj["Open"] = 140;
        DataRow_Obj["High"] = 150;
        DataSet_Obj.Tables["CandleTable"].Rows.Add(DataRow_Obj);
        //DataRow_Obj = null;
      }

      Tag_Serie_Candle = new Steema.TeeChart.Styles.Candle(TChart1.Chart);
      Tag_Serie_Candle.DataSource = DataSet_Obj.Tables["CandleTable"];

		Tag_Serie_Candle.OpenValues.DataMember = DataSet_Obj.Tables["CandleTable"].Columns["Open"].ToString();
		Tag_Serie_Candle.CloseValues.DataMember = DataSet_Obj.Tables["CandleTable"].Columns["Close"].ToString();
		Tag_Serie_Candle.DateValues.DataMember = DataSet_Obj.Tables["CandleTable"].Columns["Date"].ToString();
		Tag_Serie_Candle.DateValues.DateTime = true;
		Tag_Serie_Candle.HighValues.DataMember = DataSet_Obj.Tables["CandleTable"].Columns["High"].ToString();
		Tag_Serie_Candle.LowValues.DataMember = DataSet_Obj.Tables["CandleTable"].Columns["Low"].ToString();
		Tag_Serie_Candle.LabelMember = "Candle Chart";
		Tag_Serie_Candle.CheckDataSource();		
    }