动态合并Repeater控件数据列
前天Insus.NET实现《动态合并GridView数据行DataRow的列》。今天再玩玩Repeater控件,功能也是动态合并某列栏位。
Repeater控件跟GridView控件一样集成度高,越是自由与松散的,在合并时,越是不好控制。
我们在网站上,创建一个网页,拉Repeater控件至网页:
去.aspx.cs为Repeater控件绑定数据,数据库表格,存储过程,以及连接数据库获取数据,在此不提供。
浏览效果:
OK,我们开始实现合并数据列,博文开始有提及,由于Repeater控件与GridVeiw控件有很大不一样,合并方法也没有什么参考可言。但有一点是相同的地方,合并的事件还是有ItemCreated中进行。
上图中为Repeater控件添加OnItemCreated="RepeaterFruit_ItemCreated"事件,拿掉原ItemTemplate模版内的html,用Literal控件来替代。也就是说,所有数据行均在后台OnItemCreated="RepeaterFruit_ItemCreated"事件中动态产生。
去.aspx.cs定义两个页面级的变量,参考下图#1部分代码。而#2部分代码块,是从数据源分析出合并列中,每个可合并的字段所占有几行数据,并填充入Dictionary<string,int>集合中。
下面开始写OnItemCreated事件:
#1代码行,是从集合中,获取匹配当前数据行合并列有几行可合并。
#2代码块,如果只有一行,就不必做任何合并动作,原原本本产生一行数据即可。
#3代码块,如果遇上需要合并的字段,而且是刚第一次产生,需要为合并列添加rowspan属性,并赋值。
#4代码块,是相同的合并列,不必再动态产生了。
程序运行之后的效果:
动态合并Repeater控件数据列的更多相关文章
- 动态合并Repeater控件数据列 Ver2
前一版本<动态合并Repeater控件数据列>http://www.cnblogs.com/insus/p/3240848.html .今天Insus.NET重新演示它,为什么? 因为两点 ...
- asp.net动态网站repeater控件使用及分页操作介绍
asp.net动态网站repeater控件使用及分页操作介绍 1.简单介绍 Repeater 控件是一个容器控件,可用于从网页的任何可用数据中创建自定义列表.Repeater 控件没有自己内置的呈现功 ...
- 动态变更Repeater控件HeaderTemplate列名
本博文,Insus.NET教你动态实现变更Repeater控件HeaderTemplate列名.一般情况之下,是不需要动态变更,只有动态有Repeater控件不变情况之下,来显示多种数据源进行绑定.这 ...
- webform之Repeater控件
一.Repeater控件 数据循环编辑 1.repeater包括五大模板: (1)HeaderTemplate:标题模板,对开头进行编辑,只执行一次 (2)FooterTemplate:页尾结束模板, ...
- 动态绑数据(Repeater控件HeaderTemplate和ItemTemplate)
前几天,Insus.NET有写了<动态绑数据(GridView控件Header和ItemTemplate)>http://www.cnblogs.com/insus/p/3303192.h ...
- Repeater控件 ---表格展示数据
简介: Repeater控件是Web 服务器控件中的一个容器控件,它使您可以从页的任何可用数据中创建出自定义列表. Repeater 控件不具备内置的呈现功能,这表示用户必须通过创建模板为 Repea ...
- 一个动态扩展表格控件列和行的 jQuery 插件
一个动态扩展表格控件列和行的 jQuery 插件 不过这并不影响使用鸭! 看这里:https://github.com/zhuwansu/table-ext.js 一个简单的示范 html <t ...
- ASP.Net中通过Jquery前端对Repeater控件绑定的数据进行操作
说明:由于Repeater控件是动态绑定,通过Id获取数据只能默认获取第一行: 1.对Repeater中div设置样式 2.通过$(".css").each(function(){ ...
- Repeater 控件 当数据源没有数据的时候显示 暂无数据 的两种方式
第一种:现在前台给Repeater控件外面的div加一个runat=”server” 然后在cs后台判断数据源是否为空, 是的话就修改这个前台div的InnerText或者是InnerHtml 即可 ...
随机推荐
- 异常java.sql.SQLException: Field 'id' doesn't have a default value
使用spring data jpa出现这个情况. entity中的自增策略已经加好了. 还是出现这个异常.去数据库中查看,发现没有给主键加上自增. 出现这个问题去实体类跟数据库中看一下就可以了.
- python中print的几种用法
python中的print有几种常用的用法: 1. print("first example") 2. print("second", "exampl ...
- bash 中的行处理命令 awk
转自:http://blog.chinaunix.net/uid-23302288-id-3785105.html
- Oracle 11g R2(11.2.0.4) RAC 数据文件路径错误解决--ORA-01157 ORA-01110: 数据文件
Oracle 11g R2(11.2.0.1) RAC 数据文件路径错误解决--ORA-01157 ORA-01110: 数据文件 oracle 11g R2(11.2.0.4) rac--scan ...
- Ubuntu下设置VNCServer
Ubuntu下设置VNCServer Virtual Network Computing(VNC)是进行远程桌面控制的一个软件.客户端的键盘输入和鼠标操作通过网络传输到远程服务器,控制服务器的操作.服 ...
- Compare and Swap(CAS)
CAS(Compare and Swap)是个原子操作.拿到一个新值后,CAS将其与内存中的值进行比较,若内存中的值和这个值不一样,则将这个值写入内存,否则,不做操作.在Java的 java.util ...
- java反射专题二
一丶Class中常用方法详解 1)getFields() 只能获取到运行时类中及其父类中声明为public的属性 2)getDeclaredFields() 获取运行时类本身声明的所有属性 3)get ...
- onclick事件没有反应的五种可能情况
转自:https://blog.csdn.net/qujing_1120/article/details/76853039 onclick=”alert()” 事件没有反应的几种情况.第一:<i ...
- elastic(7)bulk
转自:https://www.cnblogs.com/xing901022/p/5339419.html bulk批量导入 批量导入可以合并多个操作,比如index,delete,update,cre ...
- LNMP 1.2 Nginx编译安装
Nginx官网是:nginx.org 下载稳定版本 cd /usr/local/src wget http://nginx.org/download/nginx-1.8.0.tar.gz tar zx ...