wpf异常:某个ItemsControl与它的项源不一致


把一个 dic绑定到了listview上,有时候下拉列表会报这个异常。因为直接使用了itemssource = dic,而dic在另一个线程上不定期更新,这样如果直接绑定的话就会报这个错误,原因是直接绑定的话会把itemssource的内存地址直接指向dic的内存地址,当dic更新后,会导致内存地址变动,使程序无法正常读取内存中的数据而报错。最简单的解决方法是new一个dictionary ,把dic传过去,然后再赋值给itemssource,这样new出来的dic就会有另一块专用的内存空间,无论原dic如何变动都不会影响新的dic。至于内存开销大了一倍,不在考虑范围。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM