这个问题我也踩过坑,刚开始喜欢直接往DataGridView里Add行,觉得方便快捷不用绕来绕去。但后来发现如果数据变动频繁或者要做很多联动处理的时候,还是用DataTable更加省心。DataTable是内存中的一个小型数据库,你可以在背后操作数据,再通过数据绑定更新到界面上,整个流程更符合MVVM或者前后端分离的设计理念。而且一旦出错也比较容易定位问题,调试起来更方便。现在我基本都用DataTable.Add.Row然后再绑定给DataGridView,虽然写法稍微多几行代码,但好处真的不少