[Ext.Net] 1.x_Ext.Net.Grid之行展开
来源:互联网 发布:sd卡数据恢复中心 编辑:程序博客网 时间:2024/04/30 13:04
<Plugins> <ext:RowExpander ID="RowExpander" runat="server"> <DirectEvents> <BeforeExpand OnEvent="BeforeExpand" Success="setSubprojectExpandInfomation(response, result, el, type, action, extraParams);" Before="return !record.cached;"> <EventMask ShowMask="true" MinDelay="500" Target="CustomTarget" CustomTarget="={GPCooper.body}" /> <ExtraParams> <ext:Parameter Name="ProjectID" Value="record.data['id']" Mode="Raw" /> </ExtraParams> </BeforeExpand> </DirectEvents> <Component> <ext:FormPanel ID="RowEditor1" runat="server" Padding="6" Height="260" Border="false" Layout="ColumnLayout" AnchorHorizontal="100%" AutoScroll="true"> <Items> <ext:Panel ID="panDetail" runat="server" Header="true" Border="false" FormGroup="true" Title="项目信息" ColumnWidth="1.0"> </ext:Panel> </Items> </ext:FormPanel> </Component> <Listeners> <Expand Handler="#{RowEditor1}.record = record; #{RowEditor1}.getForm().loadRecord(record);" /> </Listeners> </ext:RowExpander> </Plugins>
JS
//展开子项目 var setSubprojectExpandInfomation = function (response, result, expander, type, action, params) { var prj = Ext.getCmp("panDetail"); var values = result.extraParamsResponse.content; var value = values.split('|'); //多个值分割符号 prj.body.dom.innerHTML = value[0]; };
后台:
/// <summary> /// 子项目展开 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void BeforeExpand(object sender, DirectEventArgs e) { string projID = e.ExtraParams["ProjectID"]; DataTable dt = new DataTable(); StringBuilder strSql = new StringBuilder(); strSql.Append("SELECT ZMQuotation.id,[TaskCode] as 工作流号, dbo.GetStatus(TaskCode) as 状态码,[SerialNo] 报价单,"); strSql.Append("[ProductType] 财务模版,[ProductType2] 产品类型, "); strSql.Append("[Customer P/N] 客户品号,[Internal P/N] 内部品号,[Date] 创建日期,us.name as 工程师,users.name as 业务员,rtrim([dbo].[GetTaskMark](TaskCode)) as 进度, "); strSql.Append("SaleRemark 销售备注,RdRemark 开发备注,PurRemark 采购备注,FinRemark 财务备注 "); strSql.Append("FROM [OA].[dbo].[ZMQuotation] left join users on [BusinessId]=users.id "); strSql.Append("left join users as us on [EngineerId]=us.id "); strSql.Append("where [ZMQuotation].id= " + projID); dt = SqlHelper.ExecuteDataset(SqlHelper.conn, CommandType.Text, strSql.ToString()).Tables[0]; StringBuilder html = new StringBuilder(); html.Append("<table class=\"data\">"); for (int i = 0; i < dt.Rows.Count; i++) { for (int j=0; j < dt.Columns.Count; j++) { html.Append("<tr>"); html.Append("<td width='100px' align=right><B>" + dt.Columns[j].ColumnName + ":</B>" + "</td>"); html.Append("<td>" + dt.Rows[i][j] + "</td>"); html.Append("</tr>"); } } html.Append("</table>"); e.ExtraParamsResponse["content"] = html.ToString(); }
上图:感谢心动的词提供支持
- [Ext.Net] 1.x_Ext.Net.Grid之行展开
- Ext.Net 1.x_Ext.Net.CheckboxSelectionModel类型Ext.grid.GridPanel的某行不能选择
- Ext.Net 1.x_Ext.Net_修改grid行或者列的背景颜色和字体颜色
- Ext.Net 1.x_Ext.Net.Panel之列布局
- Ext.Net 1.x_Ext.Net.GridPanel之导出EXCEL
- Ext.Net 1.x_Ext.Net.GridPanel 之锁定列
- Ext.Net 1.x_Ext.Net.GridPanel之Filters 过滤数据
- Ext.Net 1.x_Ext.Net.Button之刷新
- Ext.Net 1.x_Ext.Net.GridPanel之右键菜单
- Ext.Net 1.x_Ext.Net.Grid拖动行排序,【最上】【最下】【上移】【下移】按钮排序
- Ext.Net 1.x_Ext.Net.GridPanel 删除行提示
- Ext.Net 1.x_Ext.Net.GridPanel行按钮高亮否
- Ext.Net 1.x_Ext.Net.GridPanel行选择
- Ext.Net 1.x_Ext.Net.Combox联动
- Ext.Net 1.x_Ext.Net.日期格式化
- Ext.Net 1.x_Ext.Net.GridPanel CRUD
- Ext.Net 1.x_Ext.Net.皮肤切换
- Ext.Net 1.x_Ext.Net.DirectMethods
- Socket 转发工具
- 函数模板与类模板的区别
- PKM2 - PKManager (基于内容的个人知识管理工具) 5M 绿色免费
- android apk安装结束的系统广播的监听
- Java生成UUID
- [Ext.Net] 1.x_Ext.Net.Grid之行展开
- 如何实现Windows上只启动程序一次
- Android系统的开机画面显示过程分析
- Omniplan文件导入 Microsoft Project的乱码问题
- vim基本命令
- iphone 笔试题整理
- strchr函数
- OpenSUSE访问局域网共享
- 我的海角