DataGridView绑定List<t>对象,偶尔出现索引 |1 没有值|C/S开发框架</t>
只要一点击DataGridView控件,马上就会跳出System.IndexOutOfRangeException异常,具体内容如下:
未处理 System.IndexOutOfRangeException Message="索引 -1 没有值。"
解决方案
使用 BindingSource 对象绑定DataGridView 控件的数据源。
C# 全选
private void DoBindingDetail(object source)
{
BindingSource bindingSource = new BindingSource();
bindingSource.DataSource = source;
gvDetail.DataSource = bindingSource;
}在向DataGridView绑定Ilist<T>类型的对象是,如果对象的成员为0,那么就会出现此问题。而且即使重新绑定DataGridView的数据源,也会继续存在此问题,解决的方法就是在向DataGridView绑定Ilist<T>对象是,要保证其中至少有一个成员,否则宁可不绑定(虽然不是最完美的解决方法)。其实最好的方法,是用BindingList<T>对象代替Ilist<T>对象作为DataGridView的数据源,即可彻底解决此问题,而且能实现DataGridView修改时与数据源的自动更新。

参考文档:
FastReport.NET 动态创建报表FastReport.Report实例绑定List 数据源
DbFramework数据库实体类对象模型框架( 支持MsSQL,MySQL,Oracle三种数据库)|C/S开发框架
GoF设计模式:中介者模式(Mediator Pattern)—协调多个对象之间的交互-C/S开发框架
GoF设计模式:访问者模式(Visitor Pattern)—操作复杂对象结构-C/S开发框架
GoF设计模式:迭代器模式(Iterator Pattern)—遍历聚合对象中的元素 -C/S开发框架
C#转换IList对象数组为byte数组.然后通过WebService传递
C#绑定TreeList的DataSource属性及获取DataRow数据
C#统计List 字符串属性长度(返回每个属性的最大长度)|C/S开发框架
C# DataGridView 隐藏默认 * 行|C/S开发框架
C# 对象克隆 TOut ObjectHelper.Clone |C/S开发框架
CSFramework.WebApi用户请求对象模型|C/S开发框架
WinFramework轻量级开发框架 | 数据绑定(ViewDataBinding)与数据校验(ValidateForSave)|C/S开发框架
GoF设计模式:原型模式(Prototype Pattern)—对象的克隆-C/S开发框架
GoF设计模式:代理模式(Proxy Pattern)—对象的间接访问-C/S开发框架
GoF设计模式:享元模式(Flyweight Pattern)—实现对象的复用-C/S开发框架
OOP面向对象编程(1)图说OOP基础-C/S开发框架
FastReport.NET 动态创建报表FastReport.Report实例绑定List 数据源
DbFramework数据库实体类对象模型框架( 支持MsSQL,MySQL,Oracle三种数据库)|C/S开发框架
GoF设计模式:中介者模式(Mediator Pattern)—协调多个对象之间的交互-C/S开发框架
GoF设计模式:访问者模式(Visitor Pattern)—操作复杂对象结构-C/S开发框架
GoF设计模式:迭代器模式(Iterator Pattern)—遍历聚合对象中的元素 -C/S开发框架
C#转换IList对象数组为byte数组.然后通过WebService传递
C#绑定TreeList的DataSource属性及获取DataRow数据
C#统计List 字符串属性长度(返回每个属性的最大长度)|C/S开发框架
C# DataGridView 隐藏默认 * 行|C/S开发框架
C# 对象克隆 TOut ObjectHelper.Clone |C/S开发框架
CSFramework.WebApi用户请求对象模型|C/S开发框架
WinFramework轻量级开发框架 | 数据绑定(ViewDataBinding)与数据校验(ValidateForSave)|C/S开发框架
GoF设计模式:原型模式(Prototype Pattern)—对象的克隆-C/S开发框架
GoF设计模式:代理模式(Proxy Pattern)—对象的间接访问-C/S开发框架
GoF设计模式:享元模式(Flyweight Pattern)—实现对象的复用-C/S开发框架
OOP面向对象编程(1)图说OOP基础-C/S开发框架
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
在线客服
