Потоки. Нельзя вызвать Invoke до создания дескриптора окна - C#

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. MainPanel SP = new MainPanel(); //окно с чартом
  2. OneCharting chartI =new OneCharting();
  3. chartI.AddChart(SP.GetChart()); // return MainChart; - элемент чарта
  4. Thread myThread = new Thread(new ThreadStart(chartI.Start));
  5. myThread.IsBackground = true;
  6. myThread.Name = "ChartBuild";
  7. myThread.Start();
Листинг программы
  1. namespace SPanel
  2. {
  3. class OneCharting
  4. {
  5. Chart MainChart;
  6. public void AddChart(Chart MainObject)
  7. {
  8. MainChart = MainObject;
  9. }
  10. public void Start()
  11. {
  12. Action action = () => MainChart.Update();
  13. MainChart.Invoke(action);
  14. }
  15. }
  16. }
Пытаюсь обновить график, но выводит: Нельзя вызвать Invoke до создания дескрипта окна. В чем может быть проблема и вообще правильно ли я сделал конструкцию, в пришипе создания слоя, серии и заполнение данных чарта идёт нормально, а вот вызов метода с проблемами и редактирование некоторых полей тоже, хотя о недопустимой операции в несколько потоков трещит.

Решение задачи: «Потоки. Нельзя вызвать Invoke до создания дескриптора окна»

textual
Листинг программы
  1. MainPanel SP = new MainPanel(); //окно с чартом

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.214 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы