- 浏览: 56532 次
最新评论
做项目中经常会遇到的一个问题,在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 1022JW FLV PLAYER 在线FLV播放器中文使用说明 2 ... -
安装VisualSVN Server过程中出现错误,无法启动VisualSVN服务
2012-06-08 14:26 1552安装VisualSVN Server过程中出现错误,无 ... -
SVN服务器搭建和使用(三)
2012-06-07 17:10 863SVN服务器搭建和使用( ... -
SVN服务器搭建和使用(二)
2012-06-07 17:10 902SVN服务器搭建和使用(二) 上一篇介绍了Vi ... -
SVN服务器搭建和使用(一)
2012-06-07 17:09 1072SVN服务器搭建和使用(一) Subversio ... -
asp.net 2.0 treeview点击相应的父节点文本展开子节点而不是点前面的加号才能打开
2012-05-14 12:04 3451在要点击展开的父节点上设置:SelectAction为Expa ... -
ASP.NET获取当前时间
2012-05-07 10:31 2936在c# / ASP.net中我们可以 ... -
让iframe的height=100%在IE7、8中正常显示
2012-04-17 22:33 1645具体原因不明,在载入的时候改变他的高度为用户区的高度即可,在i ... -
JS确定取消控制是否删除的方法
2012-04-12 15:32 1120<script language="jav ... -
JS与Asp.Net的相互取值
2012-04-12 14:58 2718JS中取得Asp.Net的值 (1)取得服务端控件的值 va ... -
js数组操作大全(转)
2012-04-12 14:52 24927shift:删除原数组第一项,并返回删除元素的值;如果数组为空 ... -
使用JS相应事件以及动态创建对象控件
2012-04-10 18:09 3191今天做项目的时候遇到一个比较纠结的问题,在后台上传图片的时候, ... -
在Repeater 中绑定 DropDownList
2012-03-29 17:00 1123理论上下面这段代码可行的,结果却怎么也显示不出来,找了半天,发 ... -
点击repeater里面的按钮获取本行里面其他列中的数据
2012-03-29 14:33 3817今天在做一个 后台列表修改的功能时遇到一个问题。 我要实现的功 ... -
在asp.net中动态生成web控件
2012-03-28 23:22 1112大多数情况下,我们在制作asp.net页面的时 ... -
c#动态生成文字图片解决方案
2012-03-28 09:06 1034今天网上看到一篇文章,可以动态生成文字图片的,还没验证过,先记 ... -
.net弹出对话框
2012-03-27 13:07 930今天在网上看到一篇.net弹出对话框的文章,感觉这个类不错,记 ... -
直接使用VS2008中的SQL2005
2012-03-27 09:31 1058这两天公司换了台电脑,装了VS2008后准备装SQL2 ...
相关推荐
在本篇文章中,我们将探讨如何将Windows Presentation Foundation (WPF) ListBox与ADO.NET数据源进行绑定的过程。ADO.NET是Microsoft开发的一个用于访问数据库的技术,它允许应用程序通过多种数据库连接方式来访问...
- 控件与事件处理:了解如何在ASP.NET页面上使用VB.NET编写控件事件处理程序,如Button的Click事件。 - 数据绑定:利用VB.NET与数据库交互,实现GridView、ListView等控件的数据绑定。 5. **实例解析**: - 通过...
在这个场景中,我们主要探讨如何在Repeater中使用`if`语句以及如何进行日期绑定的转换。 首先,让我们看看如何在Repeater的ItemTemplate中使用`if`语句。在ASP.NET中,我们可以使用`<%# %>`数据绑定表达式来与数据...
1. **基础语法**:VB.NET和ASP.NET的基础语法,包括变量声明、数据类型、流程控制语句(如If-Then-Else、For-Next、While-Wend等)、函数和过程的使用。 2. **面向对象编程**:类、对象、属性、方法、继承、多态和...
在VB.NET中,学习者首先需要理解基本的语法结构,包括变量声明、数据类型、运算符、流程控制语句(如If...Then、For...Next、While...End While等)。VB.NET支持事件驱动编程,这在网页开发中尤为重要,因为用户交互...
在Visual C#.NET中,语句块(如if、while、for语句)使用花括号(`{}`)包围。而在Visual Basic.NET中,使用End If、End While、End For等关键字来标记语句块的结束。 ### 6. **圆括号与方括号的使用** Visual C#...
通过使用ADO.NET组件,你可以轻松地执行各种数据库操作,如创建表、插入数据、查询以及将结果展示在数据网格中。以上代码展示了如何开始使用SQLite3,但实际应用可能需要根据具体需求进行更复杂的操作,如事务处理、...
在Web开发中,尤其是在使用ASP.NET进行开发时,经常会有将数据显示在GridView中,并允许用户将这些数据导出为Excel文件的需求。这种功能对于数据分析、报表制作等场景非常有用。通过简单的编程技巧,我们可以在ASP...
代码中可能包含if-else语句、switch-case结构、for循环、while循环等,这些都是程序控制流程的关键元素。VB.NET的Do...Loop、For Each...Next等循环结构使得遍历数据和执行重复任务变得简单。 3. **函数与过程** ...
在提供的代码示例中,我们看到了一个简单的VB.NET应用程序,它使用`OleDbDataAdapter`从Access数据库(`.mdb`)中填充`DataSet`,并将数据绑定到`DataGrid`控件,同时还有绑定文本框以便用户编辑数据。 首先,`...
使用SQL语句在数据库中创建表: ```sql CREATE TABLE Images ( ImageID AUTOINCREMENT PRIMARY KEY, ImageName TEXT(50), ImageDescription TEXT(255), ImageData LONGBINARY ) ``` 在VB.NET中,可以使用`...
在 VB.NET 中,动态构建 SQL 查询语句是一项非常重要的技能。示例代码展示了如何根据用户输入构建动态查询: #### 1. 初始化查询语句 ```vb str = "select * from telecode where 1=1" ``` 初始化一个基本的 ...
本篇将详细介绍如何在.NET中实现分页功能,并讨论用户状态保持的策略,以及涉及到SQL修改字段语句的应用。 首先,我们来看.NET中的分页实现。在给定的代码片段中,使用了ASP.NET的`DataList`控件来展示数据,并通过...
学习VB.NET的基础语法,包括变量、数据类型、控制结构(如if语句、for循环)、函数和类,是理解和编写此商品销售系统的关键。 2. **Windows Forms**:VB.NET中的Windows Forms用于创建桌面用户界面,这是商品销售...
在这个主题中,我们将深入探讨如何使用VB.NET实现DataGridView控件的使用,包括数据的读入和读出。 首先,让我们了解DataGridView控件的基本功能。此控件可以显示二维表格数据,支持行、列的添加、删除和编辑,以及...
4. **语句终止**:VB.NET使用"End If"、"Next"等语句来结束块,而C#通常依赖大括号{}来定义代码块。 5. **括号与花括号**:VB.NET使用圆括号()来分组操作数,而C#则使用圆括号和花括号。例如,函数调用和数组初始化...
源代码中可能展示了如何声明变量、常量,使用控制流语句(如If...Then...Else、For...Next、While...End While)以及函数和过程的定义。 2. **数据库连接与操作**:VB.NET 提供了ADO.NET(ADO.NET Entity Framework...
在ASP.NET中,我们可以通过绑定DataSourceID属性来实现,但由于我们使用的是EF,所以我们需要在代码后面动态绑定数据。在Page_Load事件中,我们可以使用EF的DbContext实例查询数据库,然后将结果集绑定到Gridview。...
1. **C#语言基础**:C#是.NET的主要编程语言,面试中可能会询问C#的基本语法,如变量、数据类型、控制流(if-else,switch,for,while)、类和对象、继承、多态、接口、委托和事件等。 2. **面向对象编程**:理解...
8. **异常处理**:理解如何在.NET中使用try-catch-finally语句处理异常,以及如何自定义异常。 9. **多线程**:了解线程的基本概念、线程同步机制(Mutex、Semaphore、Monitor等)以及异步编程模型(Task、async/...