本帖最后由 wei3231122 于 2009-06-28 17:36:08 编辑

解决方案 »

  1.   

    应该这样:<%# DataBinder.Eval(Container.DataItem,"Priv").ToString()=="1"?"AAAAAAAAA":"BBBBBBBB"%>或者写个函数来处理.<%#YourFunc( DataBinder.Eval(Container.DataItem,"priv").ToString())%>
     
      

  2.   

    用问好表达式只能判断一个啊,我要判断的多,还有就是我在后台写函数的时候怎么绑定那个数据啊
      那个函数我是这样写的 public static string judge(string str)
        {
            string reval = String.Empty;
            string ss = DataBinder.Eval(Container.DataItem, "_Top");
            switch (str)
            {
                case "1":
                    reval = ss;
                    break;
                case "2":
                    reval = "x_12323_829139696.jpg";
                    break;
                case "3":
                    reval = "no_photo.gif";
                    break;        }
            return reval;
        }
    运行时报这个错   CS0117: “System.ComponentModel.Container”并不包含“DataItem”的定义
      

  3.   

    通过参数传,<%#YourFunc( DataBinder.Eval(Container.DataItem,"priv").ToString())%> 
    这里可以传多个参数,如果不想传参数也可传数据对象(datarow/datarowview 等)<%#judge(Container.DataItem)%>
    protected string judge(object oDataItem)
    {
    DataRowView row = (DataRowView)oDataItem;
          然后取字段就可}