如果是一次判断用
<%# Eval("用户类型") == "0" ? "注册用户" :"游客"%> 能解决。但是多次判断我试了:<%# Eval("用户类型") == "0" ? "管理员" : (%><%# Eval("用户类型") == "1" ? "总版主" : (%><%#Eval("用户类型")== "2" ? "版主" : (%><%#Eval("用户类型") == "3" ? "VIP用户" : (%><%#Eval("用户类型") == "4" ? "注册用户": "")))); %><%--或--%><%# Eval("用户类型") == "0" ? "管理员" : %><%# (Eval("用户类型") == "1" ? "总版主" : %><%#(Eval("用户类型")== "2" ? "版主" : %><%#(Eval("用户类型") == "3" ? "VIP用户" : %><%#(Eval("用户类型") == "4" ? "注册用户": "")))); %>结果都不行,用if else if 语句是就要把<%# 改成<%会报错的,请楼下的帮帮我!

解决方案 »

  1.   


    <%# GetState(Eval("用户类型").ToString())%>在后台写个方法 返回一个string类型,多少都可以判断
      

  2.   


    <%# Eval("用户类型") == "0" ? "Eval("注册用户")" :"Eval("游客")"%> 
    好像以前这么用过一次 . 你试下 不知道对不对.
      

  3.   

    替换成一个Label控件,DataBound里判断,查找控件为其赋值吧
      

  4.   

    2楼的方法行,在前台<%#%>中完成可能是无法实现的。
      

  5.   

    后台写个方法   public   tring   Check(object   abc)   
      {   
          //写判断返回字符串类型userType
          retrun userType;   
      }  前台<% Check(Eval("用户类型"))%>
      

  6.   

    在ItemDataBound事件里也可以写判断。。不行就换种形式。。别把头抓破了呵呵。。