PDA

View Full Version : سوال: مشکل در بکار گیری Thread و خطای STA



m_test
چهارشنبه 17 اسفند 1390, 20:32 عصر
من برای بسته شدن فرم لاگین وباز شدن همزمان فرم اصلی از تکه کد زیر استفاده کردم:

System.Threading.Thread objThread = new System.Threading.Thread(new System.Threading.ThreadStart(RunForm));
objThread.Start();
this.Close();


private void RunForm()
{
Application.Run(new frmMain());
}


تا اینجای کار مشکلی وجود نداره من وارد فرم اصلیم میشم و از منو به فرمای دیگه هم دسترسی دارم
حالا اگه بخوام از تو یکی از فرمهام ی دیالوگ Open باز کنم خطا میگیره از Thread

83813

AGENT-20
جمعه 16 تیر 1391, 16:37 عصر
فکر کنم چون داری فرم جاری this رو میبندی خطا میده

منم خصا میخورم چون فرم رو میبندم
اگر خواستی میتونی فرم رو پنهان کنی
this.hide();

mmd2009
جمعه 16 تیر 1391, 16:44 عصر
با سلام

کدتون رو به این شکل تغییر بدید :


System.Threading.Thread objThread = new System.Threading.Thread(new System.Threading.ThreadStart(RunForm));
objThread.ApartmentState = System.Threading.ApartmentState.STA;
objThread.Start();
this.Close();


موفق باشید