快速业务通道

ASP.NET 2.0数据教程之五十三:从GridView的页脚插入新记录

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
前的7), 而我们使用RowCommand里设置的PageIndex值话,页面将跳往倒数第2页,而不是 我们期望的末页。而DataBound事件是在添加产品且重新绑定以后才发生,我们在 DataBound事件处理器里设置的PageIndex值才是真正的末页的PageIndex值。

最后,本文用到的GridView看起来相当宽,因为添加产品信息要用到很多 列。因此,最好将它设置为竖向排列。另外我们可以减少输入列来缩小整体宽度 ,也许我们添加新产品时用不到UnitsOnOrder、UnitsInStock、ReorderLevel这 几项,那么在GridView里将其移除即可。

删除UnitsOnOrder、 UnitsInStock、ReorderLevel列后需要做调整,有2种方法:

1.仍然使用 AddProduct方法,不过其需要传入UnitsOnOrder、UnitsInStock、ReorderLevel 列的值。我们可以在Inserting事件处理器中,对上述3列使用“硬编码 ”值或默认值。

2.在ProductsBLL类里对AddProduct方法重载,使其 不需要传入UnitsOnOrder、UnitsInStock、ReorderLevel列的值。然后,在 ASP.NET page页面设置ObjectDataSource使用重载的AddProduct方法。

以 上2种方法都能奏效。在以前的教程里我们使用的是后者,对ProductsBLL类的 UpdateProduct方法多次重载。

总结:

DetailsView和FormView控 件拥有内置的inserting插入数据功能,而GridView没有。不过我们可以使用 GridView控件的页脚行来达到此目的。要显示页脚行只需要设置ShowFooter属性 为true。我们可以这样对页脚行进行用户定制:将每一列转换成TemplateField, 并在其FooterTemplate模板定制插入界面。正如我们在本章看到的那样, FooterTemplate 模板可以包含Buttons,TextBoxes, DropDownLists,CheckBoxes, data source controls,validation controls等控 件,除此以外,为了便于用户输入,Add按钮, LinkButton或ImageButton等也是 必需的。

当点击Add按钮后,将调用ObjectDataSource控件的Insert()方 法,进而使用其映射的插入数据方法(具体到本文,即为ProductsBLL类的 AddProduct方法),在调用具体的插入数据方法前,我们需要将插入界面里键入 的数据传递ObjectDataSource控件的InsertParameters集合。要达到该目的,我 们应该在ObjectDataSource控件的Inserting事件处理器里,编程访问插入界面的 Web控件。

本教程探讨了优化GridView外观的技巧。接下来的一系列教程 ,我们看如何使用2进制

数据——比如images, PDFs, Word documents等等,当然还有data Web控件。

作者简介

Scott Mitchell,著有六本ASP/ASP.NET方面的书,是4GuysFromRolla.com的创始人,自 1998年以来一直应用 微软Web技术。Scott是个独立的技术咨询顾问,培训师,作 家,最近完成了将由Sams出版社出版的新作,24小时内精通ASP.NET 2.0。他的联 系电邮为mitchell@4guysfromrolla.com,也可以通过他的博客 http://ScottOnWriting.NET与他联系。

本文配套源码

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号