第三方控件(OCX)多线程如何实例化,用了background组件
在主窗口上的一个按钮,点击以后跳出loading窗口(提示文件正在创件),用background的dowork实例化子窗口,该子窗口包含Load函数包含有dsoframer.ocx word文档的第三方控件,运行报异常,不是单线程,无法实例化控件
代码如下:
private DocWaitingForm form2;
private DocPreview form1;
private void btDeditMakeFile_Click(object sender, EventArgs e)
{
bgwFileMaking.RunWorkerAsync();
form2 = new DocWaitingForm();
form2.Show();
}
private void bgwFileMaking_DoWork(object sender, DoWorkEventArgs e)
{
string a = “weqwefq”;//一些参数
form1 = new DocPreview(a);
form1.Show();
}
private void bgwFileMaking_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
form2.Close();
}
DocPreview 类的load函数
private void DocPreview_Load(object sender, EventArgs e)
{
this.axFCPreviewform.Open(this.Path);
}
this.axFCPreviewform = new AxDSOFramer.AxFramerControl();控件直接以视图方式拉入了窗体,DocPreview.designer.cs文件报错
网上百度过,找不到好办法,望各位高手指导指导