当前位置: 移动技术网 > IT编程>开发语言>.net > WPF 不支持从调度程序线程以外的线程对其 SourceCollection 进行的更改

WPF 不支持从调度程序线程以外的线程对其 SourceCollection 进行的更改

2019年12月23日  | 移动技术网IT编程  | 我要评论

9c8838,zq锻炼教程视频,77bbbb

该问题出现在wpf中的vm类中,observablecollection类型,该类型的 collectionview 不支持从调度程序线程以外的线程对其 sourcecollection 进行的更改,解决办法:

threadpool.queueuserworkitem(delegate
            {
                synchronizationcontext.setsynchronizationcontext(new
                    dispatchersynchronizationcontext(system.windows.application.current.dispatcher));
                synchronizationcontext.current.post(pl =>
                {
                    //里面写真正的业务内容
                    _framecontents.add(frame);
                    _datagridmain.scrollintoview(_framecontents[_framecontents.count - 1], _datagridmain.columns[0]);
                }, null);
            });

其中 _framecontents 就是public observablecollection<framecontent> _framecontents 类型。

by:

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网