<asp:HyperLinkColumn     DataTextField ="function_id" DataNavigateUrlField="function_id" 
DataNavigateUrlFormatString="javascript:var win=window.open('ShowDetail.aspx?function_id={0}',null,'width=692,height=100');"
HeaderText="明细">
</asp:HyperLinkColumn>
各位大虾,
我的'ShowDetail.aspx需要传两个参数,我找过帖子,说不能这样实现,需要TemplateColumn,
上面这个用TemplateColumn怎写?谢谢

解决方案 »

  1.   

    <asp:DataGrid ID="dg_test" Runat="server">
    <Columns>
    <asp:TemplateColumn>
    要写的内容
    </asp:TemplateColumn>
    </Columns>
    </asp:DataGrid>
      

  2.   

    <asp:TemplateColumn>
    <ItemTemplate>
    <a href='javascript:var win=window.open("ShowDetail.aspx?function_id=<%# DataBinder.Eval(Container.DataItem, "function_id")%>&param2=<%# DataBinder.Eval(Container.DataItem, "param2")%>",null,"width=692,height=100");'>
    <%# DataBinder.Eval(Container.DataItem, "function_id")%>
    </a>
    </ItemTemplate>
    </asp:TemplateColumn>
      

  3.   

    只是说需要将HyperLink放在模板列TemplateColumn中而已,楼主只要按这样的格式写就成:
    <asp:TemplateColumn HeaderText="用户名">
    <ItemTemplate>
    <asp:HyperLink ID="UserName" Text='<%# CType(DataBinder.Eval(Container.DataItem,"UserName"),String)%>' NavigateUrl='<%# "DetailInfo.aspx?id="+DataBinder.Eval(Container.DataItem,"id").ToString() %>' Target=_blank Runat=server />
    </ItemTemplate>
    </asp:TemplateColumn>如有问题,可发消息过来.