DevExpress8.1 ASPxGridView保存数据的心得
来源:互联网 发布:让中国儿童也学会编程 编辑:程序博客网 时间:2024/06/07 01:55
看了DevExpress8.1 ASPxGridView的Demo后,很感兴趣,试着使用之。
demo中是静态绑定数据表,而我的数据是三层架构,保存时不能与demo中一样,只能逐条更新记录。
网上我搜索了一下,相关例程几乎找不到。我花了好多时间,才对逐条保存记录有了一点研究心得,并共享给广大有兴趣的网友。
(插入代码功能不能用,只了纯文本了。Otz...)
///以下是逐条更新记录的代码,放在RowUpdating事件中。
///注意我使用了using DevExpress.Web.ASPxEditors;
///数据视图控件名:gvCannel
protected void gvChannel_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
{
////更新数据
//读取记录主键值。键名为ChannelID。我找不到像DataGridView中DataKeys类似属性,只好将键值存放在HiddenFile控件hdID.Value中。
int ChannelID = Convert.ToInt32("0" + ((HiddenField)(gvChannel.FindEditRowCellTemplateControl((DevExpress.Web.ASPxGridView.GridViewDataColumn)(gvChannel.Columns["Orders"]), "hdID"))).Value);
web.BLL.Channel bll = new web.BLL.Channel(); //业务层
web.Model.Channel channel = bll.GetModel(ChannelID); //数据模型
//在数据绑定时使用了模板,在模板中放了一个控件(ASPxTextBox) txtCaption。该列名为"Caption"
channel.Caption = ((ASPxTextBox)(gvChannel.FindEditRowCellTemplateControl((DevExpress.Web.ASPxGridView.GridViewDataColumn)(gvChannel.Columns["Caption"]), "txtCaption"))).Text;
//从模板ASPxSpinEdit控件txtOrders.Number中读取数据,存入数据模型属性中。
channel.Orders = (int)((ASPxSpinEdit)(gvChannel.FindEditRowCellTemplateControl((DevExpress.Web.ASPxGridView.GridViewDataColumn)(gvChannel.Columns["Orders"]), "txtOrders"))).Number;
//.....这里部分代码省略....
bll.Update(channel); //用业务层更新记录
gvChannel.CancelEdit(); //结束编辑状态
e.Cancel = true; //这个不可少!!!不然更新默认状态的数据集,进而发生错误。
bindChannel(); //重新绑定数据集
}
从数据行中读取数据,我用了FindEditRowCellTemplateControl()。
我还不知道更好的办法,找到了一定贴上来,先凑合着用吧!
==========================================================
补充,其实没有必要使用模板,在RowUpdating事件中,可从e.Keys提取键值,从e.NewValues中提取更新的值,然后保存到数据表中。这样简单多了!!!
- DevExpress8.1 ASPxGridView保存数据的心得
- ASPxGridView的数据绑定显示
- aspxgridview过滤头保存
- 使用ASPxGridView的心得。(第三方控件)
- ASPxGridView数据汇总
- ASPxGridView 自定义数据 GUID
- 获取ASPxGridView 中的数据
- 获取ASPxGridView中的数据
- 为AspxGridView绑定数据
- ASPXGridView 数据分页设置
- 获取ASPxGridView 中的数据
- AspxGridView客户端多列汇总勾选的数据
- 关于Ext的EditorGridPanel实时修改数据后保存到数据库的一点心得
- 关于Ext的EditorGridPanel实时修改数据后保存到数据库的一点心得
- Android编程心得-使用Application类保存应用的全局数据
- Android编程心得-使用Application类保存应用的全局数据
- ASPxGridView ShowSelectCheckbox ASPxCheckBox Checked 选中 保存
- ASPxGridView使用(2)数据导出
- 配置Vista中IIS7遇见的几个问题
- 『天涯杂谈』十大古今名人语录经典(2007版)
- 实现Windows XP Live On USB Device
- 北京大学复试听力题型
- 实际编程中常用的线程同步技术【C#,C++】
- DevExpress8.1 ASPxGridView保存数据的心得
- 十万火急
- 日式键盘与美式键盘转换
- DropDownList无限级分类(灵活控制显示形式)
- CSS教程(二)语法
- CSS教程(三)伪类——动态链接
- CSS教程(四)如何在网页中插入CSS
- GridView编辑时动态将值转给用户自定义控件
- 十大古今名人语录经典(2005-2006版)