- 浏览: 55495 次
最新评论
做项目中经常会遇到的一个问题,在Repeater中绑定了某个数据源,需要对某个值做判断来选择页面要显示的内容,一个表中有多个值,每个值不同,显示结果也不同,这就需要用if语句来做判断了。
但是在外部可以用的if语句在判断Repeater绑定值的时候会出现问题,当然如果内容代码少的情况下我们可以用 三目算法判断,这个是可以的,例子如下: a==b?a:b;
但是当显示内同代码很多行的时候,这就不可取了,其实我们完全可以使用.net服务器组件的特性来完成我们的操作,在Repeater的显示内容的容器中(如:<table>,<tr>,<div>等)定义一个ID,并设置为服务器组件属性:runat="server"
再在Repeater绑定事件中判断该容器是否显示,事例代码如下:
前台:
后台代码如下:
如此,我们就可以实现完美控制前台的内容显示,而不需要写太多的繁琐代码,代码看起来也不是很凌乱,在例子中我还用了三目算法做样式的判断,基本上的功能都在这里面了,挖个坑先埋着,说不定以后忘了还可以回来看下0 0
但是在外部可以用的if语句在判断Repeater绑定值的时候会出现问题,当然如果内容代码少的情况下我们可以用 三目算法判断,这个是可以的,例子如下: a==b?a:b;
但是当显示内同代码很多行的时候,这就不可取了,其实我们完全可以使用.net服务器组件的特性来完成我们的操作,在Repeater的显示内容的容器中(如:<table>,<tr>,<div>等)定义一个ID,并设置为服务器组件属性:runat="server"
再在Repeater绑定事件中判断该容器是否显示,事例代码如下:
前台:
<asp:Repeater ID="Repeater1" runat="server" onitemcreated="Repeater1_ItemCreated"> <ItemTemplate> <tr id="depth2" runat="server"> <td align="left" valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0" background="img/menu_bg3.gif" class="menuB"> <tr> <td><a href="news_list.aspx?classId=<%#Eval("id")%>"><%#Eval("className") %></a></td> </tr> </table></td> </tr> <tr id="depth" runat="server"> <td background='<%# (Eval("id").ToString() ==classId || Eval("id").ToString()==perentId)?"img/menu_bj1.gif":"img/menu_bj5.gif"%>'><a href="<%#Eval("otherLink").ToString()==""?"news_list.aspx?classId="+Eval("id"):Eval("otherLink") %>" class="<%#(Eval("id").ToString()==classId || Eval("id").ToString()==perentId)?"STYLE3":""%>"><%#Eval("className") %></a></td> </tr> </ItemTemplate> </asp:Repeater>
后台代码如下:
protected void Repeater1_ItemCreated(object sender, RepeaterItemEventArgs e) { if (e.Item.DataItem != null) { if (((DataRowView)e.Item.DataItem).Row["depth"].ToString() == "2") { e.Item.FindControl("depth").Visible = false; e.Item.FindControl("depth2").Visible = true; } else { e.Item.FindControl("depth").Visible = true; e.Item.FindControl("depth2").Visible = false; } } }
如此,我们就可以实现完美控制前台的内容显示,而不需要写太多的繁琐代码,代码看起来也不是很凌乱,在例子中我还用了三目算法做样式的判断,基本上的功能都在这里面了,挖个坑先埋着,说不定以后忘了还可以回来看下0 0
发表评论
-
网页flv播放器JW FLV PLAYER 说明(转)
2012-07-11 17:59 975JW FLV PLAYER 在线FLV播放器中文使用说明 2 ... -
安装VisualSVN Server过程中出现错误,无法启动VisualSVN服务
2012-06-08 14:26 1502安装VisualSVN Server过程中出现错误,无 ... -
SVN服务器搭建和使用(三)
2012-06-07 17:10 807SVN服务器搭建和使用( ... -
SVN服务器搭建和使用(二)
2012-06-07 17:10 838SVN服务器搭建和使用(二) 上一篇介绍了Vi ... -
SVN服务器搭建和使用(一)
2012-06-07 17:09 988SVN服务器搭建和使用(一) Subversio ... -
asp.net 2.0 treeview点击相应的父节点文本展开子节点而不是点前面的加号才能打开
2012-05-14 12:04 3405在要点击展开的父节点上设置:SelectAction为Expa ... -
ASP.NET获取当前时间
2012-05-07 10:31 2890在c# / ASP.net中我们可以 ... -
让iframe的height=100%在IE7、8中正常显示
2012-04-17 22:33 1563具体原因不明,在载入的时候改变他的高度为用户区的高度即可,在i ... -
JS确定取消控制是否删除的方法
2012-04-12 15:32 1070<script language="jav ... -
JS与Asp.Net的相互取值
2012-04-12 14:58 2680JS中取得Asp.Net的值 (1)取得服务端控件的值 va ... -
js数组操作大全(转)
2012-04-12 14:52 24871shift:删除原数组第一项,并返回删除元素的值;如果数组为空 ... -
使用JS相应事件以及动态创建对象控件
2012-04-10 18:09 3151今天做项目的时候遇到一个比较纠结的问题,在后台上传图片的时候, ... -
在Repeater 中绑定 DropDownList
2012-03-29 17:00 1058理论上下面这段代码可行的,结果却怎么也显示不出来,找了半天,发 ... -
点击repeater里面的按钮获取本行里面其他列中的数据
2012-03-29 14:33 3779今天在做一个 后台列表修改的功能时遇到一个问题。 我要实现的功 ... -
在asp.net中动态生成web控件
2012-03-28 23:22 1062大多数情况下,我们在制作asp.net页面的时 ... -
c#动态生成文字图片解决方案
2012-03-28 09:06 987今天网上看到一篇文章,可以动态生成文字图片的,还没验证过,先记 ... -
.net弹出对话框
2012-03-27 13:07 881今天在网上看到一篇.net弹出对话框的文章,感觉这个类不错,记 ... -
直接使用VS2008中的SQL2005
2012-03-27 09:31 985这两天公司换了台电脑,装了VS2008后准备装SQL2 ...
相关推荐
创建和使用 DataView:描述如何创建 DataTable 中数据的动态视图,这些视图通常用于数据绑定应用程序。 创建 DataView:描述如何为 DataTable 创建 DataView。 使用 DataView 对数据排序和筛选:描述如何设置 ...
读者可以在欣赏一个个有趣例子的过程中,不知不觉具备开发真正商业项目的能力。 本书集实用性、思想性、趣味性于一体,内容共分为技术基础总结、系统架构设计思想及项目实战解析三部分,随书所附光盘收录大量实例...
2.5.1 if语句的使用方法 2.5.2 switch选择语句的使用 2.6 使用循环语句 2.6.1 for循环语句 2.6.2 while循环语句 2.6.3 do while循环语句 2.6.4 foreach循环语句 2.7 异常处理语句 2.7.1 throw异常语句 2.7.2 try-...
2.5.1 if 语句的使用方法 2.5.2 switch 选择语句的使用 2.6 使用循环语句 2.6.1 for 循环语句 2.6.2 while 循环语句 2.6.3 do while 循环语句 2.6.4 foreach 循环语句 2.7 异常处理语句 2.7.1 throw 异常语句 2.7.2 ...
2.5.1 if语句的使用方法 2.5.2 switch选择语句的使用 2.6 使用循环语句 2.6.1 for循环语句 2.6.2 while循环语句 2.6.3 do while循环语句 2.6.4 foreach循环语句 2.7 异常处理语句 2.7.1 throw异常语句 2.7.2 try-...
读者可以在欣赏一个个有趣例子的过程中,不知不觉具备开发真正商业项目的能力。 本书集实用性、思想性、趣味性于一体,内容共分为技术基础总结、系统架构设计思想及项目实战解析三部分,随书所附光盘收录大量实例...
1.5.5 在visual studio 2010中记录和使用宏 55 1.5.6 类图 57 1.5.7 应用程序生命周期管理 58 1.5.8 性能工具 60 1.6 小结 62 第2章 对象和visual basic 63 2.1 面向对象的术语 64 2.1.1 对象、类和...
2.5.1 if语句的使用方法 2.5.2 switch选择语句的使用 2.6 使用循环语句 2.6.1 for循环语句 2.6.2 while循环语句 2.6.3 do while循环语句 2.6.4 foreach循环语句 2.7 异常处理语句 2.7.1 throw异常语句 2.7.2 try-...
2.5.1 if语句的使用方法 2.5.2 switch选择语句的使用 2.6 使用循环语句 2.6.1 for循环语句 2.6.2 while循环语句 2.6.3 do while循环语句 2.6.4 foreach循环语句 2.7 异常处理语句 2.7.1 throw异常语句 2.7.2 try-...
12.5.1 创建默认值 12.5.2 默认值的绑定与松绑 12.6 小结第5篇 T-SQL高级编程篇第13章 存储过程 13.1 存储过程概述 13.1.1 存储过程的基本概念 13.1.2 存储过程的优缺点 13.2 存储过程中常用的流控制语句 13.2.1 IF....
3-14.cs if语句的使用。 3-15.cs switch语句的使用。 3-16.cs while语句的使用。 3-17.cs do-while语句的使用。 3-18.cs for语句的使用。 3-19.cs 异常捕获:try-catch语句的使用。 3-20.cs ...
2.5.1 if语句的使用方法 2.5.2 switch选择语句的使用 2.6 使用循环语句 2.6.1 for循环语句 2.6.2 while循环语句 2.6.3 do while循环语句 2.6.4 foreach循环语句 2.7 异常处理语句 2.7.1 throw异常语句 2.7.2 try-...
这个分页控件名为AspNetPager控件,是Asp.net上使用率最高的分页控件,想怎么分就怎么分.附带'超详细代码注释",好用请给评论. 基本步骤: 1.拖拽控件(存放到到Bin目录下,再拖入工具箱) 2.粘贴复制(已放出实例源码) 3....
28.SQLSERVER服务器中,给定表 table1 中有两个字段 ID、LastUpdateDate,ID表示更新的事务号, LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最后更新的事务号 答:Select ID FROM table1 Where ...