ASP.NET 2.0数据操作教程之二十:定制数据修改界面
alue字段
改动后CategoryName的模板项将拥有一个DropDownList控件和一个 ObjectDataSource,元素标记大致如下:
注 意:EditItemTemplate模板中的DropDownList必须启用视图状态(view state) 。下面我们将会在DropDownList的元素标记中增加数据绑定语法和数据绑定命令 例如Eval()和Bind(),它们要求启用视图状态,否则将无法显示。 重复以 上步骤为SupplierName的模板列中EditItemTemplate模板添加DropDownList控件 ,并命名为Suppliers。包括增加DropDownList控件和创建另一个 ObjectDataSource,注意新的ObjectDataSource调用的是SuppliersBLL 类的 GetSuppliers()方法。另外,配置Suppliers下拉框的显示字段为CompanyName, value字段为SupplierID。 两个下拉框都增加完成后,在浏览器中查看页 面并点击“Chef Anton’s Cajun Seasoning”产品的编辑按钮 。如图9所示,产品的category和supplier列都变成了下拉框并包含了对应的 category和supplier选项集。但是,你会发现下拉框中默认选择的是下拉框的第 一项(category是Beverages,supplier是Exotic Liquids),事实上它们分别应 该是Condiment和New Orleans Cajun Delights。 图9:下拉列表默认选中的是第一项 此外,如果点击更新,你会 发现该产品的CategoryID 和 SupplierID都变成了NULL。这些都是由于 EditItemTemplate模板中的下拉框没有根据数据库中的实际数据进行绑定。 为DropDownList绑定CategoryID 和 SupplierID 数据 为了使 product编辑状态下的category和supplier下拉列表选中实际数据,并使其可以根 据用户选择调用BLL的UpdateProduct方法对数据库进行更新,我们需要对两个下 拉框的SelectedValue分别绑定到CategoryID 和 SupplierID。例如对于 Categories下拉框,我们直接在元素标记中增加SelectedValue=''<%# Bind("CategoryID") %>''。 另一种做法是在设计器中 ,通过下拉框的智能标记,点击“编辑DataBinding”链接,设置编辑 模板中的下拉框的数据绑定。接下来,用双重模式指定SelectedValue绑定到 CategoryID字段(见图10)。重复上面的方法之一,为Suppliers下拉框绑定 SupplierID数据。 图10:给DropDownList的SelectedValue属性绑定CategoryID值 一旦完成两个下拉框SelectedValue属性的数据绑定,产品的category和supplier 就会默认选中实际选项了。在点击Update按钮时,下拉框中的选择也会准确传递 给UpdateProduct方法。图11显示了增加数据绑定后的代码;注意如何选中下拉列 表中的项:Chef Anton’s Cajun Seasoning产品的分类和提供商分别选中 了正确的Condiment和New Orleans Cajun Delights选项 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |