传值问题,语句不正确,请确保正确的传这3个值,并让连接文字也用获取后台的值;
测试正确的给全部分数!!!
<asp:TemplateColumn HeaderText="操作">
<ItemTemplate>
<asp:HyperLink ID=hrl Runat=server NavigateUrl='tender_scencebuy.aspx?gysid=<%=tenderId%>&proid=<%#DataBinder.Eval(Container.DataItem,"项目ID")%>&prjpakeid=<%#DataBinder.Eval(Container.DataItem,"a0") %>&buystates=<%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%>'> <%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%>
</asp:HyperLink>
</ItemTemplate>

解决方案 »

  1.   

    参考:
    <asp:HyperLinkColumn  HeaderText="客户名称" DataTextField="ABRName" DataNavigateUrlField="CusNO" DataNavigateUrlFormatString="../..//b.aspx?&amp;cusno={0}&amp;id=" ><ItemStyle HorizontalAlign="left"></ItemStyle>
    </asp:HyperLinkColumn>
      

  2.   

    楼上正解.楼主的写法就没必要用链接列了,直接用一个<a href="">就行了,或者用javascript
      

  3.   

    在后台写DataBound事件里给HyperLink 的NavigateUrl属性赋值
      

  4.   

    用超链接列实现,参考
    <asp:HyperLinkField DataNavigateUrlFields="username,userid" DataNavigateUrlFormatString="WebForm.aspx?name={0}&id={1}" DataTextField="username" />
      

  5.   

    <asp:HyperLinkColumn HeaderText="操作"  DataTextField="cz" DataNavigateUrlField="tender_scencebuy.aspx?gysid=<%=tenderId%>&proid=<%#DataBinder.Eval(Container.DataItem,"项目ID")%>&prjpakeid=<%#DataBinder.Eval(Container.DataItem,"a0") %>&buystates=<%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%>"></asp:HyperLinkColumn>
    这样也不行啊
      

  6.   

    如二楼所说:<asp:TemplateColumn HeaderText="操作">
    <ItemTemplate>
    <a href='tender_scencebuy.aspx?gysid=<%=tenderId%>&proid=<%#DataBinder.Eval(Container.DataItem,"项目ID")%>&prjpakeid=<%#DataBinder.Eval(Container.DataItem,"a0") %>&buystates=<%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%>'><%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%>
    </a></ItemTemplate>
      

  7.   

    楼上所说的方法可行,但是在后台我要进行操作的时候就findcontrol不到这一个列因为这个值随DataGrid中这一行的某个值  显示或不显示.
      

  8.   

    <asp:TemplateColumn HeaderText="操作">
    <ItemTemplate>
    <% if (符合条件){%>
    <a href='tender_scencebuy.aspx?gysid=<%=tenderId%>&proid=<%#DataBinder.Eval(Container.DataItem,"项目ID")%>&prjpakeid=<%#DataBinder.Eval(Container.DataItem,"a0") %>&buystates=<%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%>'><%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%>
    </a>
    <%
    }
    else
    {
    response.write("&nbsp;");
    }
    %>
    </ItemTemplate>
      

  9.   

    这方法我也试过了 ,问题是 它返回的这一列全部是一个值,如果bzStr变动了那么全部就成了已过期<asp:TemplateColumn HeaderText="操作">
    <ItemTemplate><%if(bzStr=="1"){%>
    <asp:Label ID="ycId" Runat="server" ForeColor="#ff0066">已过期</asp:Label>
    <%}else{%><a href="tender_scencebuy.aspx?gysid=<%=tenderId%>&proid=<%#DataBinder.Eval(Container.DataItem,"项目ID")%>&prjpakeid=<%#DataBinder.Eval(Container.DataItem,"a0") %>&buystates=<%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%>"><%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%></a><%}%></ItemTemplate>
    </asp:TemplateColumn>
      

  10.   

    bzStr是什么东西?是不是table里的东西?if(DataBinder.Eval(Container.DataItem,"bzStr") =="1")感觉你的逻辑似乎有些混乱,bzStr如果不是库里的东西,那么当绑定的时候,这个值是不会发生变化的……
    如果你确实需要用findcontrol的话可以用<a id='test' runat=server></a>后台用HtmlAnchor作强制转换
      

  11.   

    <asp:TemplateColumn HeaderText="操作">
    <ItemTemplate>
    <a href='tender_scencebuy.aspx?gysid=<%=tenderId%>&proid=<%#DataBinder.Eval(Container.DataItem,"项目ID")%>&prjpakeid=<%#DataBinder.Eval(Container.DataItem,"a0") %>&buystates=<%#DataBinder.Eval(Container.DataItem, "cz")%>'><%#DataBinder.Eval(Container.DataItem, "cz").ToString().Trim()%>
    </a>
    </ItemTemplate>tenderId是你在后台cs中定义的一个变量吧?
      

  12.   

    代码片断
    <asp:HyperLinkColumn Text="&lt;img src=Images/edit.gif border=0 alt=更改、浏览此人员帐号信息 /&gt;" Target="_blank"
    DataNavigateUrlField="EmpID" DataNavigateUrlFormatString="EmpBase.aspx?EmpID={0}"></asp:HyperLinkColumn>
      

  13.   

    <asp:BoundColumn Visible="False" DataField="EmpID" HeaderText="编号"></asp:BoundColumn>
    <asp:HyperLinkColumn Text="&lt;img src=Images/edit.gif border=0 alt=更改、浏览此人员帐号信息 /&gt;" Target="_blank" DataNavigateUrlField="EmpID" DataNavigateUrlFormatString="EmpBase.aspx?EmpID={0}"></asp:HyperLinkColumn>
    数据你cs后台邦定一下.
      

  14.   

    是呀,有点乱了,烦请指点;
    我后台是这样写的:
    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
           {
              DataRowView dv=(DataRowView)e.Item.DataItem;
    bzStr=dv["tsbz"].ToString();
              if(bzStr=="1")
           {
    e.Item.Cells[6].Text="已过期";
    e.Item.Cells[7].Controls.Clear();
           }
    }bzStr是数据表中那一行的一个标志
      

  15.   

    <asp:TemplateColumn HeaderText="操作">
    <ItemTemplate><a id='test' runat=server></a></ItemTemplate>
    </asp:TemplateColumn>private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
           {
              DataRowView dv=(DataRowView)e.Item.DataItem;
    bzStr=dv["tsbz"].ToString();
              if(bzStr=="1")
           {
    HtmlAnchor temp =(HtmlAnchor)e.item[n].FindControl("test");
    temp.HRef="xxx.asp";//自己拼个字符串
    temp.Visible=true;//不显示是false
           }
    }
      

  16.   

    标准答案来了,请给分private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    System.Web.UI.WebControls.ListItemType ltem=e.Item.ItemType;
    if(ltem==ListItemType.Pager||ltem==ListItemType.Header||ltem==ListItemType.Footer)
    {
    return;

    DataRowView dv=(DataRowView)e.Item.DataItem;
    bzStr=dv["tsbz"].ToString();
    HtmlAnchor temp =(HtmlAnchor)e.Item.Cells[7].FindControl("test");
    string xx1=e.Item.Cells[0].Text.ToString();
    string xx2=e.Item.Cells[9].Text.ToString();
    string xx3=e.Item.Cells[11].Text.ToString();
    if(bzStr=="1")
    {
    e.Item.Cells[6].Text="<FONT color=red>已过期</FONT>";

    temp.Visible=true;
    }
    else
    {
    temp.InnerText=xx3;
    temp.HRef="tender_scencebuy.aspx?gysid="+tenderId+"&proid="+xx1+"&prjpakeid="+xx2+"&buystates="+xx3+"";
    }
    }
      

  17.   

    因为我说谁能给直接测试的就给全部分,所以没有给你分.
    但仍然非常感谢  xxuu503(我爱郭芙蓉!)   
      
    谢谢!!!!