4
我正在使用VS2008中的WPF應用程序,並決定從其他WPF應用程序中重用一些代碼。不過,我有以下行一個奇怪的問題:無法將lambda表達式轉換爲類型'System.Delegate',因爲它不是委託類型
Message.Dispatcher.Invoke(() => { Message.Text = "Looking for orders..."; });
此代碼工作正常在原來的應用程序,但拋出正常的「無法轉換lambda表達式鍵入‘System.Delegate’,因爲它不是一個委託類型」新應用程序中出現錯誤。
我知道我可以將該表達式作爲一個Action來投入使用;但我很好奇爲什麼同一段代碼在一個項目中編譯和工作,而不是另一個。
嗨,彼得。感謝你的回答。我在代碼中尋找擴展方法;但沒有找到任何。不過,我確實發現了一個從System.Windows.Threading命名空間鏈接的DispatcherExtensions類。 – oliver 2012-07-14 10:46:28
爲了防止任何人感興趣,添加對System.Windows.Presentation.dll的引用包括DispatcherExtensions類 – oliver 2012-07-14 11:04:04
Hi Oliver。酷 - 不知道這堂課。我已經更新了答案,並附有課程文件的鏈接。 – 2012-07-14 11:10:32