最近一直在研究FineUI(http://www.fineui.com/),那么什么是FineUI呢,FineUI是基于 ExtJS 的专业 ASP.NET 控件库、创建 No JavaScript,No CSS,No UpdatePanel,No ViewState,No WebServices 的网站应用程序。

最近看到一些朋友一直在为嵌套表格的功能而着急...,于心不忍啊,于是乎就研究下吧...帮朋友解决一下困难。O(∩_∩)O~、

     在FineUI中,普通的Grid是很容易实现的(看官方示例),那么要是在Grid的再嵌套一个表格的话,就有些难度了。那怎么办呢?
    1、插入模板列,代码如下。

                <x:TemplateField ColumnID="expander" RenderAsRowExpander="true">
<ItemTemplate>
<div class="detailData"></div>
</ItemTemplate>
</x:TemplateField>

2、给这个模板列,绑定一个事件

   // 获取Grid的ID 
   var gridClientID = '<%= Grid1.ClientID %>';
var grid = X(gridClientID);
   // 之后点击‘+’号添加希望显示的内容,即调用.on定义的expand事件
grid.plugins[].on("expand", function (expander, r, body, rowIndex) {
// [第三步]... }

3、最为关键的的一步了,就是构造一个子GRID。

                // 构造新的子panel
this._rowPanel = new xg.GridPanel({
id: 'testgrid',
store: new Ext.data.Store
({
//autoLoad: {
// params: {
// 获取当前行的ID
// id: grid.x_state.X_Rows.DataKeys[rowIndex]
// }
//},
//读取数据源用json方法(三种方法1.读取json用JsonReader,2读取数组使用ArrayReader3.读取XML用XmlReader)
reader: new Ext.data.JsonReader
({
root: "data",
//从数据库中读取的总记录数
totalProperty: 'totalCount',
//要读取出来的字段
fields:
[
'ID', Name, Remark
]
}),
//获取数据源(该方法返回一个json格式的数据源)
proxy: new Ext.data.HttpProxy
({
url: '../json/TestHandler.ashx?test=1'
})
}),
//定义GridPanel的列名称
cm: new Ext.grid.ColumnModel([
// new Ext.grid.RowNumberer(
// { header: "编号", width: 80, align: "center" }), //添加一个编号
// new Ext.grid.CheckboxSelectionModel(), //增加 CheckBox多选框列
//header列名称,dateIndex对应数据库字段名称,sortable支持排序
{header: "角色名称", dataIndex: "Name", sortable: true },
{ header: "角色备注", dataIndex: "Remark", sortable: true }
]),
viewConfig: {
forceFit: true
},
stateful: true,
sm: new Ext.grid.RowSelectionModel({ singleSelect: false }),
autoExpandColumn: true,
enableColumnHide: true,
enableColumnMove: true,
iconCls: 'icon-grid',
viewConfig: {
forceFit: true,
emptyText: '没有满足条件的条目'
},
view: this._view,
autoWidth: true,
autoHeight: true,
//最重要的一行,跟上面定义的detailData呼应,将内容渲染到定义了class的当前层。
renderTo: Ext.DomQuery.select("div.detailData", body)[]
});
});

好了,大功告成。给大家解决问题的一个思路,第一次写,文采不佳,还请各位博友谅解,多多支持。如有问题,还望批评指教。呵呵....

    
 
 

跟我一起玩转FineUI之嵌套表格的更多相关文章

  1. html嵌套表格示例

    常用嵌套表格示例,出自<网页开发手记:HTML+CSS+JavaScript实战详解>   <html>   <head>   <title>嵌套表格布 ...

  2. C# 绘制PDF嵌套表格

    嵌套表格,即在一张表格中的特定单元格中再插入一个或者多个表格,使用嵌套表格的优点在于能够让内容的布局更加合理,同时也方便程序套用.下面的示例中,将介绍如何通过C#编程来演示如何插入嵌套表格到PDF文档 ...

  3. Ext3.4-EXT之嵌套表格的实现

    其中使用到的"RowExpander.js"为extjs官方示例中自带的. 实现这个嵌套表格要注意两点技巧: 1 提供给外层表格的dataStore的数据源以嵌套数组的形式表示细节 ...

  4. ExtJS中实现嵌套表格

    先看效果: 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...

  5. Java 操作Word表格——创建嵌套表格、添加/复制表格行或列、设置表格是否禁止跨页断行

    本文将对如何在Java程序中操作Word表格作进一步介绍.操作要点包括 如何在Word中创建嵌套表格. 对已有表格添加行或者列 复制已有表格中的指定行或者列 对跨页的表格可设置是否禁止跨页断行 创建表 ...

  6. elementUI表单嵌套表格并对每行进行校验

    elementUI表单嵌套表格并对每行进行校验 elementUI 表单嵌套表格并进行校验. 目录 效果展示 代码链接 关键代码 完整代码 效果展示 先看看这是不是需要的效果^_^ ​ 如图,Elem ...

  7. element-ui中的表格嵌套表格

    element-ui中有详细的各种表格及表格方法.也有表格展开出现二级的样式,但是却没有表格嵌套二级表格的方案,于是就自己写了一个,样式图如下: 展开后如下 这就是一个普通的二级表格嵌套,用的是el- ...

  8. FineUI第十八天---表格之事件的处理

    表格之事件的处理: 1.事件参数: GridPageEventArgs:表格分页事件参数,对应onPageIndexChange事件. NewPageIndex:新页面的索引 GridSortEven ...

  9. .Net程序猿玩转Android开发---(8)表格布局TableLayout

    表格布局TableLayout是Android中比較经常使用的一个布局控件,既然是表格,肯定有行和列,TableLayout中的行有TableRow组成.列依据每行控件的数量来确定 假如第一行有3个控 ...

随机推荐

  1. 计算Excel中的Sheet个数

    $strpath="d:\ee.xlsx"$excel=new-object -comobject excel.application$WorkBook = $excel.Work ...

  2. SCOM资源池

    为了分散RMS特定的工作负载,默认创建有三个资源池. 1. All Management Servers Resource Pool: 将大多数RMS具体实例和工作流放入到这个池中.默认情况下,如果一 ...

  3. Myeclipse如何改变编码方式

    Windows---->Preferences---->myeclipse Enterprise Workbench---->File and Editors----->JSP ...

  4. HDU 4099 Revenge of Fibonacci(高精度+字典树)

    题意:对给定前缀(长度不超过40),找到一个最小的n,使得Fibonacci(n)前缀与给定前缀相同,如果在[0,99999]内找不到解,输出-1. 思路:用高精度加法计算斐波那契数列,因为给定前缀长 ...

  5. 《UCD火花集1-2》读后感

                                                                      一个多月的时间都没有更新博客了,只因为9月份有了其他的任务,耽搁了一 ...

  6. qt超强绘图控件qwt - 安装及配置

    qwt是一个基于LGPL版权协议的开源项目, 可生成各种统计图.它为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或一组浮点数等方式 ...

  7. 基于HTML5的捕鱼达人游戏网页版

    之前给大家分享了html5实现的水果忍者,愤怒的小鸟,中国象棋游戏.今天给大家分享一款捕鱼达人(fishjoy)网页版游戏的源码.可以在线玩也可以下载到本地.它使用html5技术和javascript ...

  8. 项目源码--JAVA基于LBS地理位置信息应用的服务端

    技术要点: 1. LBS应用框架服务端实现 2. JAVA服务端技术 3. MYSQL数据库技术 4. 源码带详细的中文注释 ......   详细介绍: 1. LBS应用框架服务端实现 此套源码是基 ...

  9. debian7 更换GCC版本

    最近在编译qt,之前用的是debian6,gcc版本是gcc-4.4,当使用debian7时,编译遇到了很多跟debian6不一样的问题,debian7的默认gcc使用的是gcc-4.7,可能是编译器 ...

  10. 计算机网络中的TCP/UDP协议到底是怎么回事(一)

    TCP/IP五层网络结构模型 物理层:物理层建立在物理通信介质的基础上,作为系统和通信介质的接口,用来实现数据链路实体间透明的比特 (bit) 流传输.只有该层为真实物理通信,其它各层为虚拟通信 数据 ...