-2
顯示形式所以我有這個包含一個靜態類:從不同的線程
public static void ShowErrorReport(Exception e, SqlCommand sqlc = null)
{
try
{
frmErrorReport frmER = new frmErrorReport(e, SqlCommand_: sqlc);
frmER.ShowDialog();
frmER.Dispose();
}
catch (Exception f)
{
Debug.Print(f.ToString());
}
}
我希望能夠使用這個從在排隊的後臺工作運行一些數據庫相關的方法。問題是這些方法有時不知道任何winforms對象,所以使用Invoke()
是不可能的(據我所知)。
是否有任何其他方式從backgroundworker線程調用此過程並確保在UI線程上創建表單?
或者我會通過傳遞一個winforms對象來讓這些數據庫方法有點混亂(不期待這種可能性!)?
我是很新,多線程...
感謝
這是糟糕的設計。更好地使用事件或例外。這也與多重流行無關。 – CSharpie
謹慎闡述? –
如何使用服務中的確切代碼,其中沒有用戶可以單擊對話框?記住這一點,即使你不需要它。它仍然有助於避免這樣的問題。 – CSharpie