网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > ASP.net > 正文

ASP.NET 2.0中的数据操作::定制数据修改界面

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12

Scott Mitchell
2006 年 6 月
Truly译

摘要: 本文主要介绍如何对GridView的编辑界面进行定制,使GridView在编辑时具有DropDownList和RadioButtonList控件,提供更人性化的界面。

译注:Scott Mitchell写的46篇(现在发布了前15篇)ASP.NET2.0教程系列第20篇译文,原文尚未发布,Word文档可以在这里下载中英混排版本

目录

简介
一、重载UpdateProduct方法
二、手工处理可编辑的GridView
三、在编辑界面中使用DropDownList显示Category和Supplier
四、用RadioButton表示Discontinued状态
小结


简介

GridView和DetailsView控件通过绑定列和CheckBox列,可以简化数据编辑界面制作,呈现只读,编辑和新增界面,我们不需要增加元素标记或编写任何额外代码就可以得到这些界面。然而,绑定列和CheckBox列呈现的界面却缺乏实际应用中经常用到的定制功能。为了对GridView和DetailsView的编辑、新增界面进行定制,需要用模板列(TemplateField)替换原有列。

在上节教程中我们讨论如何增加验证控件来定制数据编辑界面,而本节教程将演示如何使用Web控件对实际的数据集合进行定制:将绑定列和CheckBox列中默认的TextBox、CheckBox控件替换成其他的输入控件。为此,我们将创建一个可编辑的GridView,并允许编辑更新产品的名字、类别、提供商和废弃状态等。而且编辑某行时,类别category和提供商supplier我们将使用DropDownList来显示,以供用户进行选择。此外,还将CheckBox列中默认的CheckBox控件替换成RadioButtonList控件,并提供2个单选选项:Active和Discontinued。 如图1:


图1:在GridView的编辑界面使用DropDownList和RadioButton控件

 

一、重载UpdateProduct方法


本节教程我们将创建一个可编辑的GridView并允许编辑更新产品的名字、类别、提供商和废弃状态等。因此,我们要重载UpdateProduct方法,并接受5个输入参数:4个产品参数值加上一个产品ID。像以前那样,本重载将:

1. 根据指定的ProductID从数据库中获取产品信息;
2. 更新ProductName,categoryID,supplierID和Discontinued字段;
3. 通过TableAdapter的Update()方法向数据访问层DAL发出更新请求。

简单起见,这个重载方法省略了一个重要的业务逻辑――检查并确保一个将会标记为discontinued的产品不是它的提供商提供的唯一产品。你愿意的话也可以加进来,或者做的更完善一些,将这个逻辑写到一个独立的方法中。

下面的代码是我们在ProductsBLL类中新增的UpdateProduct重载方法:

[System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Update, false)]public bool UpdateProduct(string productName, int? categoryID, int? supplierID, bool discontinued, int productID){    Northwind.ProductsDataTable products = Adapter.GetProductByProductID(productID);    if (products.Count == 0)        // 如果没有匹配记录,返回false        return false;    Northwind.ProductsRow product = products[0];    product.ProductName = productName;    if (supplierID == null) product.SetSupplierIDNull(); else product.SupplierID = supplierID.Value;    if (categoryID == null) product.SetCategoryIDNull(); else product.CategoryID = categoryID.Value;    product.Discontinued = discontinued;    // 更新产品记录    int rowsAffected = Adapter.Update(product);    // 成功更新后返回true,否则返回false    return rowsAffected == 1;}

 

二、手工处理可编辑的GridView


编写完UpdateProduct重载方法,下面要做的是创建可编辑的GridView:在设计器窗口中打开EditInsertDelete 文件夹中的CustomizedUI.aspx页,为其增

  • 下一篇资讯: ASP 和 ASP.NET 之间的区别
  • 网学推荐

    免费论文

    原创论文

    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号