快速业务通道

ASP.NET 2.0数据操作教程之二十:定制数据修改界面

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
项,一个为“Active”标签,值为 “False”,另一个为“Discontinued”标签,值为 “True”。这些操作即可直接在元素标记中添加 <asp:ListItem>元素,也可通过设计器中ListItem集合编辑器处理。图13 演示了指定两个单选按钮后的ListItem集合编辑器。

ASP.NET 2.0数据操作教程之二十:定制数据修改界面

图13:为RadioButtonList增加Active和Discontinued选项

由于 普通项模板ItemTemplate中的RadioButtonList不应是编辑状态,所以设置 Enabled属性为false,而编辑状态对应的EditItemTemplate模板中 RadioButtonList的Enabled属性则应设置为true。这样以来,非编辑行中单选按 钮作为只读显示,而编辑状态则允许用户进行选择。

仍然需要用数据库中 product的Discontinued数据绑定RadioButtonList控件的SelectedValue属性。像 本节教程前面那样,即可直接添加绑定语法也可通过RadioButtonList的智能标记 中的‘编辑DataBinding’链接。

增加完这两个 RadioButtonList并做适当配置后,Discontinued的模板列元素标记大致如下:

<asp:TemplateField HeaderText="Discontinued" SortExpression="Discontinued">
<ItemTemplate>
<asp:RadioButtonList ID="DiscontinuedChoice" runat="server" Enabled="False" SelectedValue=''<%# Bind ("Discontinued") %>''>
<asp:ListItem Value="False">Active</asp:ListItem>
<asp:ListItem Value="True">Discontinued</asp:ListItem>
</asp:RadioButtonList>
</ItemTemplate>
<EditItemTemplate>
<asp:RadioButtonList ID="DiscontinuedChoice" runat="server" SelectedValue=''<%# Bind("Discontinued") % >''>
<asp:ListItem Value="False">Active</asp:ListItem>
<asp:ListItem Value="True">Discontinued</asp:ListItem>
</asp:RadioButtonList>
</EditItemTemplate>
</asp:TemplateField>

此时,Discontinued列从 CheckBox列转变为一对单选按钮(见图14)。当进入product编辑界面时, discontinued对应的单选按钮被选中,点击更新时也会将新的状态更新到数据库 。

ASP.NET 2.0数据操作教程之二十:定制数据修改界面

图14:表示Discontinued的CheckBox被替换成一对单选按钮

注 意:由于Product数据库中的Discontinued字段不允许为NULL值,所以显示界面中 不用考虑NULL的情况。不过如果Discontinued允许NULL时,就要在列表中增加第3 个单选项,值设为空字符串(Value=””),就像category和supplier 的下拉框那样。

小结

由于绑定列和CheckBox列自动呈现了只读、 编辑和新增界面,缺少定制能力。可是我们却经常需要对新增和编辑界面进行定 制,比如增加验证控件(上节教程)或定制数据集的用户界面(本节教程)。用模 板列TemplateField定制界面总结为以下几步:

1. 增加模板列或者将现有 的绑定列、CheckBox列转为模板列。

2. 按照实际需要给界面增加控件

3. 给新增加的控件进行相关字段的数据绑定。

定制过程除了使用 内建的ASP.NET控件,也可以在模板列中使用自定义控件,编译过的服务器控件以 及用户控件。

祝编程快乐!

作者简介

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

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号