怎样对已显示的数据进行操作?

changxiang 2002-04-11 02:50:21

即对它:<%# DataBinder.Eval(Container.DataItem, "cr_path")%>操作

在ASP3。0中实现这样的功能很简单,可ASP.net如何实现如下功能呢?
<%
kindid=Recordset1.Fields.Item("cr_kindid").value
Select case kindid
case 1
%>
<img src="<%=(Recordset1.Fields.Item("cr_path").Value)%>">
<%
case 2
。。。。。。。。。。。。
%>
...全文
27 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
guo_com 2002-04-13
  • 打赏
  • 举报
回复
其实最简单的方法是将你要操作的值放在一个TABLE中,在定义一个STRING变量,让它的值等于eventargs传来的item.findcontrl("[tableid]").text,再对STRING变量操作就OK了
changxiang 2002-04-12
  • 打赏
  • 举报
回复
各位同仁,请帮忙看一下吧!
changxiang 2002-04-11
  • 打赏
  • 举报
回复
在Item_Bound事件中有如下语句:

dim aap = e.Item.Cells(0).Text
select case aap

case "1"
System.Web.UI.WebControls.Image im = new System.Web.UI.WebControls.Image();
myimg.ImageUrl = DataBinder.Eval(Container.DataItem, "cr_path")
case "2"
myobject.'有关控制SWF文件显示的标识符
End Select
在<body>中的<form>里有如下标签:
<img id ="im" runat = "server"/>
<object id = "myobject" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
width="500"
height="350">
<param name=movie
value="DataBinder.Eval(Container.DataItem, "cr_name")">
<param name=quality
value=high>
<embed src="DataBinder.Eval(Container.DataItem, "cr_path")"
type="application/x-shockwave-flash"
width="300"
height="200" >
</embed>
</object>


我的意思是:从上一页中传来一个cr_id,值可取为1,2
如果是1,则想要使<img>标签起作用,再用记录集中的图片的路径字段,将图片显示出来。
如果是2,则<img>标签不起作用<object>起作用,与之相关的代码在<body>中显示出来。
以上是根据上面提供的方法试写的一些代码,请给予指正。
有别的办法希望指教。(这在ASP.net前的版本很简单的)
谢谢!
triout 2002-04-11
  • 打赏
  • 举报
回复
也可以使用下面的方法:
(int)(DataBinder.Eval(Container.DataItem,"cr_path"))=1?"<img src=...>":((int)DataBinder.Eval(Container.DataItem,"cr_path")=2?"...":("..."))
dreammaster 2002-04-11
  • 打赏
  • 举报
回复
DataBinder.Eval(Container.DataItem,"cr_path")是一个Object对象,你可以做任何操作:

<script language=c# runat=server>
string convert(object obj) {
return "hello";
}
</script>

在绑定时你可以照写
<%# convert(DataBinder.Eval(Container.DataItem,"cr_path") %>
popman 2002-04-11
  • 打赏
  • 举报
回复
一样的。只不过你要在.net里面用reader来代替recordset。
然后就
<img src="<%=cstr(reader.getvalue(列的序号))%>">
icyer 2002-04-11
  • 打赏
  • 举报
回复
假如你要处理的列是第一列。
你可以在DataGrid的ItemDataBound中进行处理:
switch(e.Item.Cells[0].Text)
{
case "1" :
System.Web.UI.WebControls.Image img = new System.Web.UI.WebControls.Image();
img.ImageUrl = ...;
break;
case "2" :
...
}

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧