当前位置: 首页 > 编程语言 > C#

为什么我绑定的DataGridView抛出“操作无效,因为它导致对SetCurrentCellAddressCore函数的重入调用”错误?

时间:2023-04-10 23:30:59 C#

为什么我绑定的DataGridView抛出“操作无效,因为它导致对SetCurrentCellAddressCore函数的重入调用”错误?将DataGridView控件绑定到绑定源时,我的应用程序出现以下错误:操作无效,因为它导致对SetCurrentCellAddressCore函数的重入调用绑定源取决于数据表。我正在从DataGridView中过滤记录。我使用了dataGridView1_CellValueChanged()事件并且正在过滤DataGridView。但是当我从当前单元格中删除数据时,会发生此错误。我怎么解决这个问题?DataGridView抛出异常以防止无限循环发生。这通常是以下原因之一:查看CellValueChanged事件的处理程序并确保您没有在处理程序中执行上述任何操作。这很可能是由于您在保存后尝试刷新DataGridView造成的。我建议您调用该方法,而不仅仅是调用它。BeginInvoke(新方法调用者(PopulateControl));我发现发生此异常是因为我的代码中有一个空的DataGridView.CellValidated子。一旦我消除了这个漏洞,错误就消失了。这非常相似(可能相同但没有编辑单元格)。在与控件相同的线程(事件、后台工作程序、另一个线程...)之外的数据网格视图上执行的任何操作都需要被调用。在此处阅读解决方案。https://stackoverflow.com/questions/44456465/datagridview-invalidoperationexception-reentrant-call-to-setcurrentcelladdressco?noredirect=1#comment75919793_44456465将Application.DoEvents()放在DataGridView.RowEnter中也有效。以上是C#学习教程:为什么我绑定的DataGridView抛出“操作无效,因为它导致对SetCurrentCellAddressCore函数的重入调用”错误?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: