我的情景:調用線程必須爲STA,因爲許多UI組件都需要這在WPF
void Installer1_AfterInstall(object sender, InstallEventArgs e)
{
try
{
MainWindow ObjMain = new MainWindow();
ObjMain.Show();
}
catch (Exception ex)
{
Log.Write(ex);
}
}
我遇到錯誤「調用線程必須爲STA,因爲許多UI組件都需要這種」
我做的事?
[請將STAThreadAttribute] 私人無效DisplayFormThread(){ 嘗試 { 的MainWindow = ObjMain新的主窗口(); ObjMain.Show(); } catch(Exception ex) { Log.Write(ex); } } – anbuselvan 2010-11-15 12:33:54
對不起,我不瞭解您的評論。 'STAThreadAttribute'可以縮短爲'STAThread';支持。你是這個意思嗎? – 2010-11-15 12:50:07
這不起作用,[STAThread]僅在程序入口點(主)上被識別。改用Thread.SetApartmentState()。你還必須運行一個消息循環,Application.Run()。 – 2010-11-15 12:56:55