Devexpress MVC GridView / CardView (持续更新)
//获取gridview里面的combo box 显示的文本
//获取某个column在gridview的 index
RightGridView.GetColumnByField("FunUID").index
//获取gridview里面的combo box 显示的文本
RightGridView.batchEditHelper.GetCellTextContainer(visibleindex ,columnIndex).textContent
在Double Click event里面. 获取当前鼠标选择的列的值
在Double Click event里面. 获取当前鼠标选择的值
//s.GetFocusedCell().rowVisibleIndex 获取当前选中行的index
//s.GetFocusedCell().column.fieldName 获取当前选中行的field
s.batchEditApi.GetCellValue(s.GetFocusedCell().rowVisibleIndex,s.GetFocusedCell().column.fieldName)
//自定义计算footer的summary
//自定义计算footer的summary
//首先将需要自定义计算的field 设置为 DevExpress.Data.SummaryItemType.Custom settings.CustomSummaryCalculate = (s, e) =>
{ ASPxSummaryItem summary = e.Item as ASPxSummaryItem;
if (e.IsTotalSummary)
{ int li_totalValue = 0;
decimal ld_totalValue = 0;
for (int i = 0; i < ((MVCxGridView)s).VisibleRowCount; i++)
{
if (summary.FieldName == "QTY")
{
if ((((MVCxGridView)s).GetRowValues(i, "TranType") == DBNull.Value ? "" : ((MVCxGridView)s).GetRowValues(i, "TranType").ToString()) == "IN")
li_totalValue += Convert.ToInt32(((MVCxGridView)s).GetRowValues(i, "QTY"));
else
li_totalValue -= Convert.ToInt32(((MVCxGridView)s).GetRowValues(i, "QTY"));
e.TotalValue = li_totalValue;
}
}
e.TotalValueReady = true;
}
};
//在Column里面显示Button(包含当添加新行时无法触发onclick event)
//在Column里面显示Button(包含当添加新行时无法触发onclick event)
partial view settings.Columns.Add(column =>
{
column.Caption = "...";
column.FieldName = "btnDlvAddress";
column.UnboundType = DevExpress.Data.UnboundColumnType.String;
column.Width = 50;
column.SetDataItemTemplateContent(container =>
{ Html.DevExpress().Button(b =>
{
b.Name = "btnDlvAddress" + container.KeyValue;
b.Text = "...";
b.Width = Unit.Percentage(100);
b.ClientSideEvents.Click = "function(s,e){ OnSearchDlvAddress(); }";
b.ClientEnabled = true;
b.EnableClientSideAPI = true;
b.ClientVisible = true;
}).Render(); });
});
Index.cshtml function OnSearchDlvAddress()
{ } //使用Gridview的StartEdit event 处理当时新行的时候 call function
function OnTruReqGridView_BatchStartEdit(s,e)
{
e.cancel = true;
if(e.focusedColumn.fieldName == "btnDlvAddress")
{
e.cancel = true;
if(ModalTruReqGridView.batchEditApi.IsNewRow(e.visibleIndex))
OnSearchDlvAddress();
}
}
//判断Gridview里面某行的某列是否有修改
//agdv_Grid.batchEditApi.HasChanges(行号, 列名orID)
var lb_IsEdit = Gridview.batchEditApi.HasChanges(0, "ColumnName"); //lb_IsEdit 将返回true or false
Devexpress MVC GridView / CardView (持续更新)的更多相关文章
- ASP.NET MVC深入浅出系列(持续更新) ORM系列之Entity FrameWork详解(持续更新) 第十六节:语法总结(3)(C#6.0和C#7.0新语法) 第三节:深度剖析各类数据结构(Array、List、Queue、Stack)及线程安全问题和yeild关键字 各种通讯连接方式 设计模式篇 第十二节: 总结Quartz.Net几种部署模式(IIS、Exe、服务部署【借
ASP.NET MVC深入浅出系列(持续更新) 一. ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态模 ...
- Devexpress MVC Gridview
1. 根据选中的KeyValue 来获取其他field的value // Gridview settings settings.CustomJSProperties = (s, e) => { ...
- Devexpress MVC Gridview 获取到增删改的所有行数据(JSON) 并使用SQL事物保存数据
//ModalChargeGridView Gridview的名字//Con_Shp_Chg 数据库表名//ConShpChgUID UID或者是标识列//gs_Language 语言(中英文)//l ...
- MVC基础知识-持续更新....
1.如何在自动生成的视图中显示需要的字段名称: 在相应的定义字段中添加Display,例如: [Display(Name = "用户名:")] public string User ...
- Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G
code&monkey Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件 ...
- ASP.NET MVC 5 系列 学习笔记 目录 (持续更新...)
前言: 记得当初培训的时候,学习的还是ASP.NET,现在回想一下,图片水印.统计人数.过滤器....HttpHandler是多么的经典! 不过后来接触到了MVC,便立马爱上了它.Model-View ...
- 关于ASP.NET MVC开发设计中出现的问题与解决方案汇总 【持续更新】
最近一直用ASP.NET MVC 4.0 +LINQ TO SQL来开发设计公司内部多个业务系统网站,在这其中发现了一些问题,也花了不少时间来查找相关资料或请教高人,最终都还算解决了,现在我将这些问题 ...
- ( 译、持续更新 ) JavaScript 上分小技巧(一)
感谢好友破狼提供的这篇好文章,也感谢写这些知识点的作者们和将他们整理到一起的作者.这是github上的一篇文章,在这里本兽也就只做翻译,由于本兽英语水平和编程能力都不咋地,如有不好的地方也请多理解体谅 ...
- 【 js 基础 】【 源码学习 】源码设计 (持续更新)
学习源码,除了学习对一些方法的更加聪明的代码实现,同时也要学习源码的设计,把握整体的架构.(推荐对源码有一定熟悉了之后,再看这篇文章) 目录结构:第一部分:zepto 设计分析第二部分:undersc ...
随机推荐
- CentOS下firewalld添加开放端口
添加 firewall-cmd --zone=public --add-port=/tcp --permanent (--permanent永久生效,没有此参数重启后失效) 重新载入 firewall ...
- 模板if 的使用
from flask import Flask,render_template app = Flask(__name__) app.debug = True @app.route('/') def h ...
- AtCoder Beginner Contest 072
这应该是我第二次打AtCoder, 题目其实并不难,就是自己经验不足想复杂了,再加上自己很笨,愣是做了97分钟才全做出来(最后三分钟,有点小激动..),看着前面大牛半个小时都搞完了,真心膜拜一下,代码 ...
- 使用python的kazoo模块连接zookeeper实现最基本的增删改查
kazoo的官方文档地址:https://kazoo.readthedocs.io/en/latest/index.html #!/usr/bin/env python # -*- coding: u ...
- CNN与图像应用
一.图像识别与定位 0.Classification:C个类别 Input:Image Output:类别标签 Evaluation metric:准确率 1.Localization: Input: ...
- 关于获取input标签属性的获取以及更改,此处用到的是readonly属性
一开始,我使用的是Jquery框架中的$.("#input").readOnly,发现取出的值为undefined,不知道是不是jQuery中不支持获取标签属性的函数, 然后就使用 ...
- PC端QQ协议说明,完美搞定QQ智能助手
一. 实验目的: 在虚拟机下NAT模式下通过Wireshark抓包,分析QQ的传输模式.了解QQ在传输信息过程中用到的协议.分析在Nat模式下,信息传输的穿透性. 二. 实验环境: Win7 专业版3 ...
- Delphi 布尔型数据
- Fuel9.0部署
一.安装环境(准备工作): 1. 所需物理主机的要求如下 内存:8GB+,推荐16GB:(少于8GB的就免谈了) 磁盘:500GB+: 物理机OS:ubuntu-desktop-amd64 14.04 ...
- Linux 开机文件系统发生错误
1 如果/目录没有损毁,那么开机的时候,屏幕会提示:press root password or ctrl +D,这个时候请输入root密码登陆系统,然后进行如下操作: 1)在光标处输入root密码登 ...