原文:無法將匿名方法轉換為System.Delegate

在WinForm中,不允許非UI線程訪問UI,如果非UI線程需要跨線程調用UI控件,通常的解決辦法是使用Control類中的Invoke方法,傳遞給該方法一個委托和委托調用的參數列表 params object args ,任何委托類型都可以,通過委托來訪問UI。其內部是,非UI線程把委托送到UI線程中,讓UI線程去調用這個委托。 一般一個方法的參數是委托類型,如果使用委托實例,那就還需要額外定義 ...

2016-10-20 22:12 0 1738 推薦指數:

查看詳情

C#--無法將lambda表達式轉換為類型‘Delegate’,原因是它不是委托類型

報錯如下: 主要是為了在子線程中更新UI線程 對於Control.Invoke()來說,任何的代理類型都是可接受的,也就是說ThreadStart和MethodInvoker都是可以接受的類型。這樣編譯器反而不知道應該用哪個代理去匹配匿名函數了,導致了編譯錯誤的發生。知道了原因 ...

Sat Jan 02 21:28:00 CST 2021 0 891
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM