ASP.NET 2.0数据教程之三十七:批量更新2010-08-10 翻译:cnblogs 有些伤感返回“”导言在前面我们学习了如何创建item级的DataList。和可编辑的 GridView一样,每个DataList里的item都包含一个Edit button,当点击时,item 会变的可编辑。item级的编辑在偶尔需要更新时没什么问题,但是在有些情况下 用户需要编辑大量的记录。如果一个用户需要编辑许多记录,他会被迫去不停的 去点击Edit,作出修改,然后点击Update,这些大量的点击会妨碍他的工作效率 。在这样的情况下,一个好的选择是提供一个完全可编辑的DataList,它的所有 的item都处于编辑模式下,它的所有的值都可以通过点击一个“Update All”button来更新。见图1。

图 1: 一个完全可编辑的DataList 的所有item都可以被修改本 章我们来学习如何创建一个完全可编辑的DataList,它提供用户更新supplier的 address的功能。第一步: 在DataList的 ItemTemplate创建一个可编辑的 用户界面在前面创建一个标准的item级编辑的DataList时,我们使用了两 个template:ItemTemplate — 包含只读的用户界面(使用 Label 显示每个product的 name 和price).EditItemTemplate — 包含编 辑的用户界面(两个TextBox ).DataList的EditItemIndex属性表明了哪 个DataListItem使用EditItemTemplate来展示(如果有的话)。即ItemIndex的值 等于DataList的EditItemIndex的DataListItem使用EditItemTemplate来展示。在 一次只编辑一个item的情况下,这个模式工作的很好,但是在创建完全可编辑的 DataList的时候就不适用了。对完全可编辑的DataList来说,我们需要所 有的DataListItem都以可编辑的界面来展示。最简单的方法是在ItemTemplate里 定义可编辑的界面。对修改supplier的address信息而言,可编辑界面里supplier 表现为文本,address,city和country的值都用TextBox来表示。首先打 开BatchUpdate.aspx页,添加一个DataList,将ID设为Suppliers。通过智能标签 添加一个名为SuppliersDataSource的ObjectDataSource控件。

图2: 创建一个名为SuppliersDataSource的ObjectDataSource