请问:
我用repeater这个控件。
其中的一个值为<%#DataBinder.Eval(Container.DataItem,"answer")%>
--------------------------------------------------------
我在后台设定一个变量string a;
请问有什么办法把<%#DataBinder.Eval(Container.DataItem,"answer")%>
赋予a这个变量?

解决方案 »

  1.   

    你把数据绑定到repeater的时候肯定有一个数据源的啊,你直接从这个数据源中取你要的值赋给a不就可以了吗?
      

  2.   

    <# A>可以吗
    或<# showa>,showa是函数,用来显示a的
      

  3.   

    后台用一个函数public string a = null;public string GetString(string str)
    {
        a = str;
    }前台写成 <%# GetString(DataBinder.Eval(Container.DataItem,"answer").ToString())%>
      

  4.   

    因为DataBinder数据邦定,由于数据源中数据量不确定可能检索出多条数据,用一个String 变量欠妥,可以用数组取值。数据邦定控件生成的都是Table表格,所以可以用访问table中的tablerow,再访问tablerow中的
    tablecell获取你想要得值,当然这只是一种方法。自己看看CSDN 和 framework的资源文件,搜索以下,都可以查到的。
      

  5.   

    如果需要每次绑定一条数据就处理一次a  
    可以直接写到ItemDataBound事件里面
      

  6.   

    楼上回答,除了nils,都是错的。
      

  7.   

    绑定表达式不能绑定field,只能绑定property_get和function。
      

  8.   

    绑定表达式的目的是把所有值赋给一个变量?逻辑上不通顺,无法理解意思?Nils(good good study,day day up) 的写法,绑定给程序那一列的函数返回值已经不是原来程序的answer列的值。
      

  9.   

    GetString函数应该永远返回空串吧?!
      

  10.   

    string a;
    a = Convert.ToString(DataBinder.Eval(e.Item.DataItem,"answer"));
      

  11.   

    不好意思我还以为你要显示变量a呢,如果你要这样赋值的话似乎没有什么意义,得到的仅仅是最后一行的answer,你要做什么?
      

  12.   

    楼上回答,除了nils,都是错的。
    》》nils的回答也是错的^_^
      

  13.   

    按照nils的回答应该修改为
    public string GetString(object str)
    {
    a = str.ToString();
    return str.ToString();
    }