ASP.NET 2.0运营数据XX:自定义数据修改界面
简介
GridView和DetailsView控件可以通过绑定列和CheckBox列来简化数据编辑界面的制作,并呈现只读、编辑和添加界面。我们可以在不添加元素标签或编写任何额外代码的情况下获得这些接口。但是绑定列和CheckBox列呈现的界面缺乏实际应用中经常使用的定制功能。为了自定义GridView和DetailsView的编辑和添加界面,有必要用TemplateField替换原始列。
在上一个教程中,我们讨论了如何添加验证控件来自定义数据编辑界面,而在本教程中,我们将演示如何使用Web控件来自定义实际的数据集合:用其他输入控件替换绑定列和CheckBox列中的默认TextBox和CheckBox控件。为此,我们将创建一个可编辑的GridView,并允许您编辑更新产品的名称、类别、提供商和过时状态。并且在编辑一行的时候,我们会使用DropDownList来显示类别类别和供应商供用户选择。此外,CheckBox列中的默认CheckBox控件被RadioButtonList控件替换,并提供了两个单选选项:“活动”和“已停止”。图1:
图1:在GridView编辑界面中使用DropDownList和RadioButton控件。
1.重载UpdateProduct方法。
在本教程中,我们将创建一个可编辑的GridView,并允许您编辑和更新产品的名称、类别、提供商和过时状态。因此,我们希望重载UpdateProduct方法,并接受5个输入参数:4个产品参数值加上一个产品ID。和以前一样,这种过载将:
1.根据指定的ProductID从数据库中获取产品信息;2.更新产品名称、类别标识、供应商标识和停产的字段;3.通过TableAdapter的Update()方法向数据访问层DAL发送更新请求。
为了简单起见,这个重载方法省略了一个重要的业务逻辑检查,以确保将被标记为停产的产品不是其提供者提供的唯一产品。如果你愿意,也可以加上去,或者做得更完善一些,把这个逻辑写成一个单独的方法。
下面的代码是我们在ProductsBLL类中新的UpdateProduct重载方法:
[系统。组件模型。component model . DataObjectMethodType . update,false)])公共bool UpdateProduct(字符串productName,int?categoryID,int?supplierID,bool已停产,int productID){ Northwind。产品数据表产品=适配器。getProductByProductID(ProductID);if(产品。Count==0) //未找到匹配记录,返回false返回false;北风。products row product=products[0];产品。ProductName=productNameif (supplierID==null)产品。setsupplierieridull();其他产品。SupplierID=supplierID。价值;if (categoryID==null)乘积。SetCategoryIDNull();其他产品。CategoryID=categoryID。价值;产品。停产=停产;//更新产品记录int rowsAffected=Adapter。更新(产品);//如果只更新了一行,则返回true,否则返回false rowsAffected==1;} 2.手动处理可编辑的GridView。
编写UpdateProduct重载方法后,下面是创建一个可编辑的GridView:在设计器窗口中打开EditIn。
版权声明:ASP.NET 2.0运营数据XX:自定义数据修改界面是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。