欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

怎么样在ASP.NET 2.0中从GridView的页脚插入新记录

来源:本站整理 作者:佚名 时间:2016-10-20 TAG: 我要投稿

导言:
正如教程《概述插入、更新和删除数据》里探讨过的一样, GridView, DetailsView和FormView Web控件都有内置的修改数据的功能。当声明绑定到数据源控件时,可以快速而方便地修改数据——甚至不用写一行代码。不幸的是,只有DetailsView和FormView控件提供了内置的插入、编辑、删除功能,而 GridView控件只支持编辑、删除功能。不过,稍许努力,我们就能使GridView控件包含一个插入界面。
为了给GridView添加插入功能,我们要决定如何添加新记录:创建插入界面,编码插入数据。在本教程,我们将为GridView的页脚行(footer row )添加插入界面(见图1)。其中每一列包含相应的用户界面元件(比如在TextBox里输入产品名称,在DropDownLis里选择供应商等等),同时我们需要一个"Add"按钮,当点击时,发生页面回传,将新记录添加到表Products里。

 图1:页脚行提供了一个添加新记录的界面
第一步:在GridView控件里展示产品信息
首先添加一个展示产品的GridView控件。打开EnhancedGridView文件夹里的InsertThroughFooter.aspx页面,在上面添加一个GridView控件,设其ID为Products,然后,在其智能标签里绑定到一个名为ProductsDataSource的ObjectDataSource 。

 图2:创建一个名为ProductsDataSource的新ObjectDataSource
设置该ObjectDataSource调用ProductsBLL类的GetProducts()方法获取产品信息。在本教程里,我们只关注于添加插入功能,与编辑和删除无关。所以,确保在“插入”选项卡里选AddProduct()方法。而在“编辑”和“删除”里寻(None)”。

 图3:将 ObjectDataSource的Insert()方法设置为AddProduct()

 图4:在UPDATE和DELETE选项里寻(None)”
因为数据库中大概有80个产品,所以我们最好还是启用分页功能,以便使插入界面更直观、更易操作。回到页面,在GridView的智能标签里启用分页。
现在,GridView和ObjectDataSource的声明代码看起来和下面的差不多:
 ID="Products" runat="server" AutoGenerateColumns="False"
 DataKeyNames="ProductID" DataSourceID="ProductsDataSource"
 AllowPaging="True" EnableViewState="False">
 
  DataField="ProductID" HeaderText="ProductID"
 InsertVisible="False" ReadOnly="True"
 SortExpression="ProductID" />
  DataField="ProductName" HeaderText="ProductName"
 SortExpression="ProductName" />
  DataField="SupplierID" HeaderText="SupplierID"
 SortExpression="SupplierID" />
  DataField="CategoryID" HeaderText="CategoryID"
 SortExpression="CategoryID" />
  DataField="QuantityPerUnit" HeaderText="QuantityPerUnit"
 SortExpression="QuantityPerUnit" />
  DataField="UnitPrice" HeaderText="UnitPrice"
 SortExpression="UnitPrice" />
  DataField="UnitsInStock" HeaderText="UnitsInStock"
 SortExpression="UnitsInStock" />
  DataField="UnitsOnOrder" HeaderText="UnitsOnOrder"
 SortExpression="UnitsOnOrder" />
  DataField="ReorderLevel" HeaderText="ReorderLevel"
 SortExpression="ReorderLevel" />
  DataField="Discontinued" HeaderText="Discontinued"
 SortExpression="Discontinued" />
  DataField="CategoryName" HeaderText="CategoryName"
 ReadOnly="True" SortExpression="CategoryName" />
  DataField="SupplierName" HeaderText="SupplierName"
 ReadOnly="True" SortExpression="SupplierName" />
 
 ID="ProductsDataSource" runat="server"
 InsertMethod="AddProduct" OldValuesParameterFormatString="original_{0}"
 SelectMethod="GetProducts" TypeName="ProductsBLL">
 
  Name="productName" Type="String" />
  Name="supplierID" Type="Int32" />
  Name="categoryID" Type="Int32" />
  Name="quantityPerUnit" Type="String" />
  Name="unitPrice" Type="Decimal" />

[1] [2] [3] [4] [5] [6] [7]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载