如何使用编辑模板在ASPxGridView中进行新增修改(除去常规的gridviw模板编辑外)
aspgridview模板编辑效果图:
//前端代码:(核心: <Templates><EditForm>.....中间可用栅格样式布局等(随意)...</Templates></EditForm>)
//其中文本控件赋值为:
<dx:ASPxSpinEdit ID="SE_BEGINAREA" runat="server" Number='<%# Eval("BEGINAREA") !=null ? decimal.Parse(Eval("BEGINAREA").ToString()) : 0%>' MinValue="0" NumberType="Float" Width="100%">
</dx:ASPxSpinEdit>
<dx:ASPxGridView ID="ASPxGridView" KeyFieldName="TPUSHMONEY_ID" runat="server" ClientInstanceName="grid" Theme="Mulberry"
AutoGenerateColumns="False" Width="100%"
OnRowInserting="ASPxGridView_RowInserting"
OnRowUpdating="ASPxGridView_RowUpdating">
<ClientSideEvents EndCallback="grid_EndCallback" />
<SettingsText EmptyDataRow="暂无数据" />
<Styles>
<%--<AlternatingRow Enabled="True" />
<Header HorizontalAlign="Center" />
<CommandColumn Spacing="10px" Wrap="False" />--%> <Table CssClass="tw-dataTable"></Table>
<Header CssClass="tw-dtheader" HorizontalAlign="Center"></Header> <CommandColumn CssClass="tw-commandColumn"></CommandColumn>
<CommandColumnItem CssClass="tw-commandColumnBtn"></CommandColumnItem>
<FocusedRow CssClass="tw-focusRow"></FocusedRow>
</Styles>
<Settings GridLines="Horizontal" />
<SettingsPager PageSize="" />
<SettingsBehavior AllowFocusedRow="True" />
<SettingsEditing Mode="PopupEditForm">
</SettingsEditing>
<SettingsPopup>
<%--<CustomizationWindow HorizontalAlign="WindowCenter" VerticalAlign="WindowCenter" />--%>
<EditForm Modal="true" HorizontalAlign="WindowCenter" VerticalAlign="WindowCenter" />
<%-- <HeaderFilter ResizingMode="Postponed" />--%>
</SettingsPopup>
<Columns>
<dx:GridViewDataTextColumn Caption="序号" VisibleIndex="" Width="100px">
<EditFormSettings Visible="False" />
<CellStyle HorizontalAlign="Center"></CellStyle>
<DataItemTemplate>
<dx:ASPxLabel ID="L_rowid_1" runat="server" Text='<%# Container.ItemIndex + 1 %>'>
</dx:ASPxLabel>
</DataItemTemplate>
</dx:GridViewDataTextColumn>
<dx:GridViewDataColumn FieldName="BEGINAREA" Caption="交易金额区间(起始)" VisibleIndex="" Width="50px"></dx:GridViewDataColumn>
<dx:GridViewDataColumn FieldName="ENDAREA" Caption="交易金额区间(结束)" VisibleIndex="" Width="50px"></dx:GridViewDataColumn>
<dx:GridViewDataColumn FieldName="PUSHMONEY" Caption="收取佣金(元/单笔)" VisibleIndex="" Width="50px"></dx:GridViewDataColumn>
<dx:GridViewDataComboBoxColumn FieldName="GETISFLAG" Caption="是否返回佣金" VisibleIndex="" Width="30px">
<PropertiesComboBox>
<Items>
<dx:ListEditItem Text="不返回" Value="" />
<dx:ListEditItem Text="返回" Value="" />
</Items>
</PropertiesComboBox>
</dx:GridViewDataComboBoxColumn>
<dx:GridViewDataColumn FieldName="PUSHEXPRESS" Caption="返回佣金公式" VisibleIndex="" ></dx:GridViewDataColumn>
<%--<dx:GridViewDataColumn FieldName="ISVALID" Caption="是否有效" VisibleIndex="" Width="5px"></dx:GridViewDataColumn>--%>
<dx:GridViewDataCheckColumn FieldName="ISVALID" Caption="是否有效" VisibleIndex="" Width="5px"></dx:GridViewDataCheckColumn>
<dx:GridViewDataColumn FieldName="TREMARK" Caption="备注" VisibleIndex="" Visible="false" Width="5px"></dx:GridViewDataColumn>
<dx:GridViewCommandColumn ShowEditButton="true" ShowInCustomizationForm="true" ShowNewButtonInHeader="True" VisibleIndex="" Width="20px" >
<EditButton Text="修 改"></EditButton>
<%--<NewButton Text ="新 增" >
<Image SpriteProperties-CssClass="btn btn-xs btn-success" Width="100%"> </Image> </NewButton>--%>
<%-- <EditButton Text="修改"></EditButton>
<UpdateButton Text="确认"></UpdateButton>
<CancelButton Text="取消"></CancelButton>--%>
</dx:GridViewCommandColumn>
</Columns>
<Templates> <EditForm>
<div class="container-fluid" style="padding-bottom: 20px;">
<div class="row">
<div class="col-sm-12">
<hr />
</div>
<div class="col-sm-6"> <div class="form-group">
<label>交易金额区间(起始)</label>
<dx:ASPxSpinEdit ID="SE_BEGINAREA" runat="server" Number='<%# Eval("BEGINAREA") !=null ? decimal.Parse(Eval("BEGINAREA").ToString()) : 0%>' MinValue="" NumberType="Float" Width="100%">
</dx:ASPxSpinEdit>
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<label>交易金额区间(结束)</label>
<dx:ASPxSpinEdit ID="SE_ENDAREA" runat="server" Number='<%# Eval("ENDAREA") !=null ? decimal.Parse(Eval("ENDAREA").ToString()) : 0%>' MinValue="" NumberType="Float" Width="100%">
</dx:ASPxSpinEdit>
</div>
</div>
<div class="col-sm-12">
<div class="form-group">
<label>收取佣金(元/单笔)</label>
<dx:ASPxSpinEdit ID="SE_PUSHMONEY" runat="server" Number='<%# Eval("PUSHMONEY") !=null ? decimal.Parse(Eval("PUSHMONEY").ToString()) : 0%>' MinValue="" NumberType="Float" Width="100%">
</dx:ASPxSpinEdit>
</div>
</div>
<div class="col-sm-8">
<div class="form-group">
<label>是否返回佣金</label>
<dx:ASPxComboBox ID="CB_GETISFLAG" runat="server" ValueType="System.String" Width="100%" SelectedIndex='<%# Eval("GETISFLAG") != null? Eval("GETISFLAG").ToString() == "1" ? 1 : 0 : 0%>'>
<Items>
<dx:ListEditItem Text="不返回" Value="" />
<dx:ListEditItem Text="返回" Value="" />
</Items>
</dx:ASPxComboBox>
</div>
</div>
<div class="col-sm-4">
<label></label>
<dx:ASPxCheckBox ID="CHEKB_ISVALID" runat="server" Width="100%" Text="是否有效" Checked='<%# Eval("ISVALID") != null ? Eval("ISVALID").ToString() == "1" ? true : false : true %>'>
</dx:ASPxCheckBox>
</div>
<div class="col-sm-12">
<div class="form-group">
<label>返回佣金公式</label>
<dx:ASPxMemo ID="TXT_PUSHEXPRESS" runat="server" Text='<%# Eval("PUSHEXPRESS")%>' Width="100%" Height="72px">
</dx:ASPxMemo>
</div>
<div class="form-group">
<label>备注</label>
<dx:ASPxMemo ID="TXT_TREMARK" runat="server" Text='<%# Eval("TREMARK")%>' Width="100%" Height="72px">
</dx:ASPxMemo>
</div>
</div>
<div class="col-sm-12">
<hr />
</div> <div class="col-sm-3 col-sm-offset-2">
<%--<dx:ASPxGridViewTemplateReplacement ID="UpdateButton" ReplacementType="EditFormUpdateButton"
runat="server"> </dx:ASPxGridViewTemplateReplacement>--%>
<dx:ASPxButton ID="UpdateButton" runat="server" Text="更 新" CssClass="btn-success" Width="100%" AutoPostBack="false">
<ClientSideEvents Click="function(s,e){grid.UpdateEdit();}"></ClientSideEvents>
</dx:ASPxButton>
</div>
<div class="col-sm-3 col-sm-offset-2">
<%-- <dx:ASPxGridViewTemplateReplacement ID="CancelButton" ReplacementType="EditFormCancelButton"
runat="server"></dx:ASPxGridViewTemplateReplacement>--%>
<dx:ASPxButton ID="CancelButton" runat="server" Text="取 消" CssClass="btn-default" Width="100%" AutoPostBack="false">
<ClientSideEvents Click="function(s,e){grid.CancelEdit();}"></ClientSideEvents>
</dx:ASPxButton>
</div>
</div>
</div>
</EditForm>
</Templates>
</dx:ASPxGridView>
//后台代码(实现数据绑定操作及赋值等)
第一步:首先要定义一个自定义的方法-----用于获取到gridview中的编辑模板中的需要修改新增的控件名( 控件的id),方法如下
protected object GetControlValue(string controlname,ASPxEditBase editBase)
{
editBase = ASPxGridView.FindEditFormTemplateControl(controlname) as ASPxEditBase;
return editBase.Value;
}
获取编辑模板中的控件名:
第二步:写新增、修改的方法(写在gridview自带的新增修改事件中),就以修改为例:
protected void ASPxGridView_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
{
int TPUSHMONEY_ID = Convert.ToInt32(e.Keys["TPUSHMONEY_ID"].ToString()); //拥金配置表id
//ASPxSpinEdit SE_BEGINAREA = ASPxGridView.FindEditFormTemplateControl("SE_BEGINAREA") as ASPxSpinEdit;
//Convert.ToDecimal(e.NewValues["BEGINAREA"] == null ? "" : e.NewValues["BEGINAREA"].ToString());
decimal BEGINAREA = Convert.ToDecimal(GetControlValue("SE_BEGINAREA", spinEdit)); //交易金额区间(起始)
decimal ENDAREA = Convert.ToDecimal(GetControlValue("SE_ENDAREA", spinEdit)); //交易金额区间(结束)
decimal PUSHMONEY = Convert.ToDecimal(GetControlValue("SE_PUSHMONEY", spinEdit)); //收取佣金(元/单笔)
int GETISFLAG = Convert.ToInt32(GetControlValue("CB_GETISFLAG", comboBox)); //是否返回佣金
String PUSHEXPRESS = GetControlValue("TXT_PUSHEXPRESS", txtMemo).ToString(); //返回佣金公式
int ISVALID = Convert.ToInt32(GetControlValue("CHEKB_ISVALID", checkBox)); //是否有效
String TREMARK = GetControlValue("TXT_TREMARK", txtMemo).ToString(); //备注
if (plateformmanagebll.UpdateCommSetting(TPUSHMONEY_ID,BEGINAREA, ENDAREA, PUSHMONEY, GETISFLAG, PUSHEXPRESS, ISVALID, TREMARK) > 0)
{
SpanHelper.AspxGridViewEdit(sender, 1, "恭喜!佣金公式修改成功!");
e.Cancel = true;
this.ASPxGridView.CancelEdit();
showPlatmoneyList();
}
}
模板编辑修改事件代码图:
如何使用编辑模板在ASPxGridView中进行新增修改(除去常规的gridviw模板编辑外)的更多相关文章
- 获取ASPxGridView 中的数据(仅仅是获取;注意模板是如何获取的)
1.取得控件值 using System.Collections.Generic; //取得当前控件值的集合 直接寻找控件的ID List<object> keyValues = this ...
- ADO.NET 中的新增功能
ADO.NET 中的新增功能: .NET Framework (current version) 以下是 .NET Framework 4.5 中 ADO.NET 的新增功能. SqlClient D ...
- WPF4.5 中的新增功能和增强功能的信息
本主题包含有关 Windows Presentation Foundation (WPF) 版本 4.5 中的新增功能和增强功能的信息. 本主题包含以下各节: 功能区控件 改善性能,当显示大时设置分组 ...
- dev中如何对combox下拉框设置可消除属性以及ASPxGridView中金额,数量的显示,以及总计、grid中某行值
下拉框属性关键:IncrementalFilteringMode="StartsWith" DropDownStyle="DropDown" ASPxGridV ...
- ASPxGridView中如何对主从表绑定数据
注:在从表的aspxgridview中的(OnDataBinding()事件中绑定数据)-----代码如下 //绑定属性值表protected void grid2_sonTable_DataBind ...
- .NET Framework 4.5、4.5.1 和 4.5.2 中的新增功能
.NET Framework 4.5.4.5.1 和 4.5.2 中的新增功能 https://msdn.microsoft.com/zh-cn/library/ms171868.aspx
- Kooboo中怎么新增一个关联的Details 动态页面。
Kooboo中怎么新增一个关联的Details 动态页面. 有几个要点: 1. Sub Page的Parent Page 必须是英文书写.如果是中文会出现找不到页面 500错误 2. 要在Page M ...
- jquery中动态新增的元素节点无法触发事件解决办法
在使用jquery中动态新增的元素节点时会发现添加的事件是无法触发的,我们下面就为各位来详细的介绍此问题的解决办法. 比如做一个ajax读取留言列表的时候,每条留言后面有个回复按钮,class为“re ...
- Delphi XE5中的新增内容
Delphi XE5中的新增内容 Delphi XE5是所有Delphi开发人员的必须备升级,并且是来自Embarcadero的获奖的.多设备应用开发解决方案的最新版本.使用Delphi XE5的新特 ...
随机推荐
- [系统开发] Postfix 邮件管理系统
一.简介 开发时间:2012年 开发工具:Perl CGI 这是我开发的 Postfix 邮件管理系统,通过它可以安全.方便的对邮件域名.用户.权限.组.邮箱容量.安全等进行各种设置:界面样式借鉴了 ...
- (三)java的数据类型
java是一种强类型的语言,所谓强类型,意味着每个变量都要有确定的类型,每个表达式也要有明确的类型,包括传递的某些参数.java中从大的方面分有两大数据类型,分别是基本数据类型和引用数据类型,基本数据 ...
- mapreduce计算框架
一. MapReduce执行过程 分片: (1)对输入文件进行逻辑分片,划分split(split大小等于hdfs的block大小) (2)每个split分片文件会发往不同的Mapper节点进行分散处 ...
- canvas刮刮乐
这周有点迷茫,不知道干嘛了,一天天就过去了!我在博客右侧公告栏加了qq交流,各位有好的主题,或者有趣的技术,欢迎交流!今天突发奇想,就写了2个h5 canvas的demo玩玩! demo一:刮刮乐 舍 ...
- JVM知识学习与巩固
JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的. 我们运行和调 ...
- AP_应付税务预扣税Withholding Tax中付款时产生预扣税(案例)
2014-07-12 Created By BaoXinjian
- 白书 4.1.2 模运算的世界 P291
1.逆元 这里有个注意事项要说,就是当要求 (a-b)%m 的时候要注意不能直接 (a%m-b%m)%m 原因是得出的值有可能是负数,所以 (a%m-b%m+m)%m 才是正确的. //x,y是引用 ...
- php之面向对象
<?php declare(encoding='UTF-8'); class Site{ /*成员变量*/ var $url; var $title = "gunduzi" ...
- git的使用(3) 多分支情况下的pull
当你存在多个分支的时候,你需要pull下来分支上面的内容,你需要指定分支进行同步命令: git pull origin branch (branch 是你的分支的名字)
- Python补充05 字符串格式化 (%操作符)
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在许多编程语言中都包含有格式化字符串的功能,比如C和Fortran语言中的格式化输 ...