none
Прорисовка графика в chart RRS feed

  • Вопрос

  • Добрый день, ни как не могу понять почему у меня не происходит прорисовка графика в Chart1, точней вот так он рисуется

    Конструктор

    public PropertyProcess()//(Form1 Send)
            {
               // System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false; //<- Cancel checking accessories to thread
                InitializeComponent();
                FileProperty();
                AboveProcess();
               // this.Component1 = Send;
                chart1.Series["CPU"].Points.AddXY(20, 50);
            }

    А вот если делаю в отдельном потоке то

    public delegate void StartGraphCPU();

    private void backgroundWorker1_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e) { bool BeginCycle = true; //this.Invoke(new MethodInvoker(() => this.chart1.Series["CPU"].Points.AddXY(50, 0))); Graph_CPU_Memory InitializationClass = new Graph_CPU_Memory(this); while (BeginCycle != false) { InitializationClass.GraphCPU(); if (backgroundWorker1.CancellationPending) { BeginCycle = false; e.Cancel = true; } else if (!backgroundWorker1.CancellationPending) { BeginCycle = true; StartGraphCPU rewq = new StartGraphCPU(SetPoint); this.Invoke(new Action(rewq)); //this.chart1.Invoke(new Action(() => chart1.Series["CPU"].Points.AddXY(13, 50))); //this.Invoke(new MethodInvoker(delegate{this.chart1.Series["CPU"].Points.AddXY(20, 50);})); //this.Invoke((Action)(() => chart1.Series["CPU"].Points.AddXY(13, 50))); // PeriodTime_Y LoadCPU_X } } } public void SetPoint () { this.chart1.Series["CPU"].Points.AddXY(20, 50); }

    вызов идет, но прорисовки на графике нет, пусто , в чем дело как заставить это работать.


    12 ноября 2014 г. 19:15