问题描述:在主线程里开个子线程,用子线程去New一个窗体FrmInitialize,并Show出来,在主线程中访问子线程中Show的窗体的控件,需传值给控件
Main.cs
static class Main
{
static FrmInitialize frmInit = null;
public static bool Login()
{
Thread thread = new Thread(frmInit);
thread.Start();
............
frmInit.Label2.Text = "正在初始化。。。。。"; //每次执行都这句话时 都会报“线程间操作无效,从不是创建控件的线程访问控件“的错误。
....................
frmInit.Close();
}
public static void frmshow()
{//线程
frmInit = new FrmInitialize();
frmInit.showDialog();
}
}
FrmInitialize.cs
public FrmInitialize()
{
InitializeComponent();
FrmInitialize.CheckForIllegalCrossThreadCalls = false; //加了这句话就可以解决线程间操作无效的问题
}