在实现NBearDataSource控件 - 02-11 20:30 修订 - 新增Master/Detail实体CRUD示例 介绍了基于NBearDataSource的Master/Detail实体CRUD示例

若使用CSS Friendly ASP.NET 2.0 Control Adapters 1.0 的,如下代码

1<nb:NBearDataSource ID="nbdsLinkCategorys" runat="server" ConnectionStringName="Access"
2        TypeName="MK2.Community.Entities.LinkCategory" EnableViewState="true">
3        </nb:NBearDataSource>
4        <asp:DetailsView ID="DetailsView1" runat="server" DataSourceID="nbdsLinkCategorys" DefaultMode="Insert"
5         AutoGenerateInsertButton="true" AutoGenerateRows="false">
6            <Fields>
7                <asp:BoundField DataField="Name" HeaderText="Name" />
8            </Fields>
9        </asp:DetailsView>

只要将DetailsView设置属性DefaultMode="Insert" AutoGenerateInsertButton="true" AutoGenerateRows="false"
就会出现异常:

索引超出范围。必须为非负值并小于集合大小。
参数名: index

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。
参数名: index

源错误:

行 57:                     {行 58:                         DetailsViewRow row = ControlAsDetailsView.Rows[iRow];行 60:                             ((row.RowState & DataControlRowState.Insert) == DataControlRowState.Insert) &&行 61:                             (!ControlAsDetailsView.Fields[row.RowIndex].InsertVisible))

源文件: XXXXX\WebSite\App_Code\Adapters\DetailsViewAdapter.cs    行: 59

我将源代码修改了一下,这样可以工作了

 1DetailsViewRow row = ControlAsDetailsView.Rows[iRow];
 2                        //if ((!ControlAsDetailsView.AutoGenerateRows) &&
 3                        //    ((row.RowState & DataControlRowState.Insert) == DataControlRowState.Insert) &&
 4                        //    (!ControlAsDetailsView.Fields[row.RowIndex].InsertVisible))
 5                        //{
 6                        //    continue;
 7                        //}
 8
 9                        //Fix by MK2
10                        if ((!ControlAsDetailsView.AutoGenerateRows) &&
11                            ((row.RowState & DataControlRowState.Insert) == DataControlRowState.Insert))
12                        {
13                            if ((iRow < ControlAsDetailsView.Fields.Count) && 
14                                (!ControlAsDetailsView.Fields[row.RowIndex].InsertVisible))
15                            {
16                                continue;
17                            }
18                        }
19                        //Fix over

转载于:https://www.cnblogs.com/fengmk2/archive/2007/02/12/648296.html

CSS Friendly 中的DetailsView的问题相关推荐

  1. 创建符合标准的、有语意的HTML页面——ASP.NET 2.0 CSS Friendly Control Adapters 1.0发布...

    ASP.NET 2.0提供了非常多的Web开发中常用到的复杂控件,例如Menu.GridView.Login等.虽然这些控件使用方法极为简单,且功能异常强大,但若你查看一些由这些控件所生成的HTML代 ...

  2. ASP.NET 3.5 的 ListView 控件与 CSS Friendly

    之前在写CSS有关文章的时候,我就想写写如何使用ASP.NET控件能够更加CSS Friendly,更容易实现一些常见的页面布局pattern,然而之后就发现这并非那么容易的.说起来要让ASP.NET ...

  3. css布局中的居中问题

    css布局中的居中问题 作者:阿捷 2004-7-5 14:35:49 #sample{ HEIGHT:240px;WIDTH:400px; BACKGROUND: url(http://www.w3 ...

  4. float属性html,详解CSS样式中的float属性

    详解CSS样式中的float属性.float是 css 样式的定位属性.我们在印刷排版中,文本可以按照需要围绕图片.一般把这种方式称为"文本环绕".在网页设计中,应用了CSS的fl ...

  5. css规则中区块block,css常用属性总结:背景background下篇

    前言:这段时间天天加班到10:30之后,简直是x了. 在上一篇文章中,分别解析了background各个属性的用法和注意细节.如果我们在项目上使用背景效果,如果使用下面的写法,你可能抓狂. body{ ...

  6. CSS基础篇--CSS/CSS3中的原生变量var详解

    使用语法 首先我们先来看一个例子: html代码: <div class="element">这是一段文字</div> css代码: .element {w ...

  7. 是否可以在另一个CSS文件中包含一个?

    是否可以在另一个CSS文件中包含一个? #1楼 是的,可以使用@import并提供css文件的路径,例如 @import url("mycssfile.css"); 要么 @imp ...

  8. cordova 不安全 css,[译] CSS Flexbox 中安全/不安全的对齐方式

    CSS Flexbox 中安全/不安全的对齐方式 我最近看了 Rachel Andrews 的演讲锦上添花:重新定义 CSS 的技术潜力.Rachel 的演讲总是能清晰而简洁地传达出满满的干货.这次演 ...

  9. ASP.NET中 DropDownList+DetailsView(详细视图)的使用前台绑定

    ylbtech-ASP.NET-Control-Bind:DropDownList+DetailsView(详细视图)的使用前台绑定 ASP.NET中 DropDownList+DetailsView ...

最新文章

  1. 百度Q2日进2.9个亿,新基建推动Apollo上位!李彦宏开招管培生:亲自选亲自带...
  2. mysql导入数据库某张表_MSSQLServer2005 导出导入数据库中某张表的数据
  3. java oracle database user dsn_跨会话序列化数据库连接
  4. 计算机学业水平测试题及答案初中,初中信息技术学业水平测试——选择题
  5. 加速度传感器与车祸报警解决方案
  6. VB创建超链接 打开指定网站的几种方法
  7. ES6 迭代器与生成器(非常详细、容易理解)
  8. JavaSE基础——GUI编程(AWT)
  9. 个人作业week7——前端开发感想总结
  10. 破解安装IAR编辑器
  11. 个人简历模板(网页版)
  12. 幼儿园故事导入语案例_幼儿园老师上课常用导入语 课前活跃气氛用这11种方法就对了...
  13. lga2066服务器准系统,4094个针脚,AMD 16核桌面处理器插槽比LGA2066还要大
  14. SQL Server 排序函数 ROW_NUMBER和RANK 用法总结
  15. 电脑桌面没有此电脑图标如何处理?
  16. BJFU_OJ系统数据结构习题目录
  17. 我在atcoder打比赛
  18. 【随机过程】马尔可夫链(1)
  19. Windows和Ubuntu双系统安装教程
  20. Swagger2.0和resful规范

热门文章

  1. jenkins-邮件通知
  2. Linux---解决校园网下VM与Xshell连接问题
  3. 浅谈Rem 及其转换原理
  4. 电脑文件加密_教你一招解决电脑文件加密
  5. 为什么现在很小的孩子都会玩游戏,他们真的看得懂吗?
  6. Python在大部分领域都能胜任,为什么很多企业转向了Golang?
  7. 自驾游,遇陌生夫妻搭车坐了一千多公里,执意要给钱,我能收吗?
  8. 农村树上的野菜“刺老芽”,价格比肉还贵,这是为啥呢?
  9. 个人所得税的申报方式有两种,分别有什么区别?该怎么选?
  10. 人生只有两条路径才能实现财富自由