<label style='display: <%=cainayisheng %>'>
 <% if (Convert.ToString(Session["account"]) == this.HiddenFieldName.Value) //提问人名字
 {%>
   <%  if(Convert.ToString(Session["account"])!= Eval("uaccount"))//回复人名字
    {%>
    <asp:Button ID="Button1" runat="server" Text="采纳为最佳答案" CommandName="Button1" CommandArgument='<%# Eval("aid")%>' />
   <%} 
    }%>
 </label>

解决方案 »

  1.   

    从你给的代码也看不到repeater的部分。
      

  2.   

    <%# (Eval("XXX")==Yourstring ? true:false%>
      

  3.   

    if(Convert.ToString(Session["account"])!= Eval("uaccount"))//回复人名字 -------错了改为:<%#if(Convert.ToString(Session["account"])!= Eval("uaccount"))%>--------注意“#”号
      

  4.   

    <%#Session["account"].ToString().Equals(Eval("uaccount"))?
    <asp:Button ID=\"Button1\" runat=\"server\" Text=\"采纳为最佳答案\" CommandName=\"Button1\" CommandArgument=\"+Eval("aid")+"\" /> :""%>
    用三元操作符,没测试
    或在后台判断
      

  5.   


    不用改了.你的代码达不到你的想要的效果.
    里面的Button的CommandArgument 它是不会去计算<%#Eval("aid")%>的. 
    你到会发现,你取到的CommandArgument值是"<%#Eval("aid")%>" 这个字符串,而不是计算出来的aid.
    包括你前面的服务端代码里面的Eval.你还是要么改成.cs代码控制,要么用HTML控件,而不是用服务端控件
      

  6.   

    <asp:Button ID="Button1" style='display: <%#Session["account"].ToString()==Convert.Tostring(Eval("uaccount"))?block:none%>' runat="server" Text="采纳为最佳答案" CommandName="Button1" CommandArgument=' <%# Eval("aid")%>' /> 
      

  7.   

    我要做一个问答~ 先用session判断这是问题是否是本人提问的 是的话就显示“满意答案按钮” 再判断是否这个回答自己的回答是的就不显示这个“满意答案按钮”(自己不能选择自己,用session和绑定的回答者名进行比较)
    <% if (Convert.ToString(Session["account"]) == this.HiddenFieldName.Value) //我要做一个问答~ 先用session判断这是问题是否是本人提问 
    {%> 
      <%if(Convert.ToString(Session["account"])!= Eval("uaccount"))//回复人名字是否是自己的
        {%> 
        <asp:Button ID="Button1" runat="server" Text="采纳为最佳答案" CommandName="Button1" CommandArgument=' <%# Eval("aid")%>' /> 
      <%} 
     }%> 就是这样~~ 喵~~