我在DATAGRID的模板列的有这个<asp:HyperLink id="Modify" runat="server" NavigateUrl='Admin_Article_Work.aspx?Action=<%#Container.DataItem("ClassID") %>'>修改</asp:HyperLink>但显示出来的链接还是Admin_Article_Work.aspx?ClassID=<%#Container.DataItem("ClassID") %>
应该是Admin_Article_Work.aspx?ClassID=35如果这么写<asp:HyperLink id="Modify" runat="server" NavigateUrl=<%#Container.DataItem("ClassID") %>>修改</asp:HyperLink>
就能显示<%#Container.DataItem("ClassID") %>的值加了别的东西就不得,因为我做如果权限不够的时候HyperLink 属性是false
所以不能用HTML的<a h****这种如果我要正常显示,应该怎么写?我知道应该是符号错误了

解决方案 »

  1.   

    不行就在DataGrid的ItemDataBound事件中处理,而且考虑到权限问题,在ItemDataBound中进行处理可能会更好,如果有权限,就
    HyperLink1.NavigateUrl = "http://www.com.cn";
    如果没有权限,就
    HyperLink1.Visible = false;
    这样不是更好
      

  2.   

    <%#DataBinder.Eval(Container.DataItem,"ClassID") %>这样写试试。
      

  3.   

    <asp:HyperLink id="Modify" runat="server" NavigateUrl=<%#"Admin_Article_Work.aspx?"+ DataBinder.Eval(Container.DataItem, "ClassID")%>>修改</asp:HyperLink>