打开一个新线程以在GUI类中工作

0 c# forms multithreading

我遇到了如何解决以下问题的问题.

我有一个类,它允许我动态更新并在表单上显示图形.为了更新图的值,我在表的类中有一个方法.我传入值以使用此方法更新图形.这是我想要做的一个高级示例:

GUICLass类:Form {

//这里绘制图表代码等

public updategraphWithNewValue(double value){

 // Code to update the graph
Run Code Online (Sandbox Code Playgroud)

}

}

我的另一课如下:

class ValueProviderForGraph {

GUIClass graphForm = new GUIClass();

public calculateValuesAndPlot(){

for(int i = 0; i <4000; i ++){

  graphForm.updategraphWithNewValue(i);

  graphForm.update();
Run Code Online (Sandbox Code Playgroud)

}

}

}

现在我从上面得到的问题是,在进行此操作时,表单会冻结.我怎么能绕过这个,任何帮助或建议将不胜感激.我希望这个高级别的例子有足够的信息,如果没有,请告诉我,我会尝试更好地解释自己.谢谢.

Jim*_*hel 5

考虑使用BackgroundWorker.它面向事件的界面应该可以让您快速启动并运行.