• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

落后先锋

不断被新技术折磨
  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

在使用Repeater、DataList 或 DataGrid 的模板列表时,根据不同状态,显示不同颜色

我们经常使用用于类似 Repeater、DataList 或 DataGrid 的模板列表,有时候需要根据不同状态,显示不同字帖颜色,以提示用户.

例如:在datagrid中,紧急显示红色,一般显示黑色,复杂显示蓝色

<asp:TemplateColumn HeaderText="紧急程度">
<ItemTemplate>
<font  color='<%# 

(string)DataBinder.Eval(Container.DataItem,"IdeaStateName")=="紧急"?"#FF0000":((string)DataBinder.Eval(Container.DataItem,"Id

eaStateName")=="一般")?"#000000":"#000080" %>'>
<%#  (string)DataBinder.Eval(Container.DataItem,"IdeaStateName")  %>
</font>
</ItemTemplate>
</asp:TemplateColumn>   

效果如下:



这种方式有个要求,就是必须知道颜色的代码数值
如果这样<%#  (string)DataBinder.Eval(Container.DataItem,"IdeaStateName")=="紧急"?"RED":"Blue" %>页面会发生异常


那我们有没有在不知道颜色的代码数值的情况下的数据绑定解决办法呢?
      
<asp:TemplateColumn HeaderText="是否阅读">
<ItemTemplate>
<div ><%# ((bool)DataBinder.Eval(Container.DataItem,"IsRead"))?"<font>YES</font>":"<font color=red>NO</font>" %>  

</div>              

</ItemTemplate>             

</asp:TemplateColumn>

未阅读的显示红色的NO,阅读过的显示黑色的YES(本系统默认黑色)

posted on 2005-01-17 19:51  落后先锋  阅读(392)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3