将List<T>转换为BindingList<T>,然后设置DataGridView的DataSource为BindingList<T>!!
代码:

DataGridView绑定List时无法进行添加删除操作的解决方法DataGridView.DataSource = new BindingList<T>(List<T>);

将绑定BindingList<T>的DataSource转化为List<T>,同理
代码:
DataGridView绑定List时无法进行添加删除操作的解决方法List<T> modelList=new List<T>((BindingList<T>)this.DataGridView.DataSource);


说明:BindingList<T>和List<T>都有个构造函数,参数是IEnumerable<T>,既然他们俩个都是继承IEnumerable,当然能相互转换。

下面是这个构造函数的执行过程:DataGridView绑定List时无法进行添加删除操作的解决方法

DataGridView绑定List时无法进行添加删除操作的解决方法public List(IEnumerable<T> collection)
 

相关文章: