我想实现的是 如Eval("Vpro")等于1就显示 是,否则就显示 否
但是,我这么写就一直都是否 
如果<%#Eval("Vpro")==1?"是":"否" %>这么写1去掉引号就是 无法转换 object类型和int类型了
怎么做啊?

解决方案 »

  1.   

    不要在页面上写这些.. 逻辑都集中到后台方法比较好..页面 
         <%# IsRight(Eval("Vpro"))%>后台 
         protected string IsRight(object obj)
        {
            return Convert.ToInt32(obj) == 1 ? "是" : "否";
        }try catch 自己加
      

  2.   


    <%#Eval("Vpro")=="1" ? "是" : "否" %>
      

  3.   

    <%#Convert.ToInt32(Eval("Vpro").ToString()) == 1 ?"是":"否"%>
      

  4.   

    <%#Convert.ToInt32(Eval("Vpro"))==1?"是":"否" %>
      

  5.   

    <%#Convert.ToInt32(Eval("Vpro"))==1 ? "是" : "否" %>
      

  6.   

    Eval("")返回的都是object类型的,你比较时转化一下就好了,前台,后台都可转
      

  7.   

    <%#Eval("Vpro").ToString()=="1"?"是":"否" %>
      

  8.   

    楼上正解了,就是Convert转化一下
      

  9.   

    少了个ToString(),或者转整型也可以
    如:
    <%#Eval("Vpro").ToString()=="1"?"是":"否" %>
    注意,这里1是代表字符串,要用双引号或者
    <%# int.Parse(Eval("Vpro").ToString())==1?"是":"否" %>
    转成了整型当然就可以不用双引号了
      

  10.   

    楼主的int型,你还正解个啥?
      

  11.   

    Eval("Vpro") 这个返回的是OBJECT
      

  12.   

    需要把object转换成string或int再比较
      

  13.   


    <%# (Eval("RecordStatus").ToString()=="0" && Eval("ApplyBillNum").ToString() != "") ? true:false %>