我嘗試以下操作:在後臺線程WPF中創建一個用戶界面?
var task = new Task(() =>
{
for (int i=0; i<10; i++) {
//Create new Grid HERE
// Add Table with some dynamic data here..
// print the above Grid here.
}
});
task.ContinueWith((previousTask) =>
{
label.Content = printerStatus(); // will return "Out of Paper", "printing", "Paper jam", etc.
},
TaskScheduler.FromCurrentSynchronizationContext());
label.Content = "Sending to printer";
它返回以下錯誤:調用線程必須爲STA,因爲許多UI組件都需要這個..
當它試圖創建一個新的UI對象電網出現的錯誤。
我該如何解決這個問題?讓我知道如果有任何其他方式周圍!
內部消息隊列,你能告訴我的示例代碼。我對這項技術很陌生。 – user995387 2011-12-29 11:58:16
我如何知道使用此任務是否完成? – user995387 2011-12-29 12:03:02
我建議閱讀[Joe Albahari](http://www.albahari.com/threading/)瞭解基礎知識。如果你想要一個STA,你必須使用Threads not Tasks,所以你沒有'ContinueWith'。您將不得不使用線程方法內部的Dispatcher.Invoke。 – 2011-12-29 12:19:19