Wyświetlanie informacji w formie z backgroundworker'a

0

Witam, mam program o strukturze jak poniżej, i chciał bym tak jak w kodzie napisane żeby się na bieżąco dodawały punkty do Chart'a. Słyszałem coś o metodzie invoke i o lock ale nie mam pojęcia jak to wykorzystać. Z góry dziękuję za pomoc. Pozdrawiam :D

main
{ 
   public X obiekt = new X();
   backgroundWorker.RunWorkerAsync();

   private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e)
   {
      obiekt.Funkcja(chart);
   }
}

class X
{
   public void Funkcja(Chart x)
   {
      for (int i = 0; i < iloscNowychPokolen; i++)
         x.Series["A"].Points.Add(i); // To ma się na bierząco aktualizować, a nie po skończonej pracy ;)
   }
}
1

aby zaktualizowac kontrolke z innego watku bedziesz musial uzyc np. Control.BeginInvoke, czyli np

public void Funkcja(Chart x)
   {
      for (int i = 0; i < iloscNowychPokolen; i++)
         x.BeginInvoke(new Action(() => x.Series["A"].Points.Add(i)); // zakladam ze chart jest dziedziczony po Control
   }

jednak uzycie background workera nie ma tu sensu (bo petla wykona sie blyskawicznie)

1 użytkowników online, w tym zalogowanych: 0, gości: 1