当前位置: 代码迷 >> .NET Framework >> c# BeginInvoke 出错,该怎么处理
  详细解决方案

c# BeginInvoke 出错,该怎么处理

热度:196   发布时间:2016-05-02 01:03:48.0
c# BeginInvoke 出错
之前一直都是以这种方式处理跨线程更新UI的。但是今天我在新建的线程中要用BeginInvoke来处理UI线程中的更新时,却总是报错。代码如下:
  BeginInvoke(new Action(() =>
  {
  FolderSmallView(_folderList);
  FileSmallView(_currentPlayLessonList);
  })); 
执行的FolderSmallView(_folderList);和FileSmallView(_currentPlayLessonList);就是需要更新UI。

错误:
使用泛型 类型" System.Action<T>" 需要"1"个类型实参。
请高手指点,谢谢。

------解决方案--------------------
参数定义不正确
------解决方案--------------------
没必要用 new Action( ... ) 呀。直接

BeginInvoke(() =>
{
FolderSmallView(_folderList);
FileSmallView(_currentPlayLessonList);
});
------解决方案--------------------
Action action = () =>
{
FolderSmallView(_folderList); 
FileSmallView(_currentPlayLessonList);
};

BeginInvoke(action);
------解决方案--------------------
begininvoke 需要外部传递参数,或者有设置参数的函数