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

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

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

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

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

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

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


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

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

14   голосов , оценка 4.214 из 5
Похожие ответы