DataNavigateUrlFields="projectid" 
DataNavigateUrlFormatString="PrjDownloadFiles.aspx?prjpk={0}" 我现在不想传递projectid了,我想把点的当前GridView的第几行,这个数值传过去,怎么办?

解决方案 »

  1.   

    SQL语句,ROW_NUMBER()
    可以查出行号
      

  2.   

    DataNavigateUrlFormatString="PrjDownloadFiles.aspx?prjpk=<%#Container.DataSetIndex+1 %>"  
      

  3.   

    测试失败,点链接,URL直接就是PrjDownloadFiles.aspx?prjpk=<%#Container.DataSetIndex+1 %>
    这个东东,可怕
      

  4.   

    使用GridView的模板列,然后再模板列中使用HyperLink,再使用上面的<%#Container.DataSetIndex+1 %>
    <asp:TemplateField ItemStyle-HorizontalAlign="center" ItemStyle-Width="80px">
           <ItemTemplate>
                  <asp:HyperLink ID="HyperLink1" runat="server" Text='<%#Eval("projectid") %>' NavigateUrl='<%# Eval((<%#Container.DataSetIndex+1 %>).ToString(),"PrjDownloadFiles.aspx?prjpk={0}") %>' ></asp:HyperLink>
           </ItemTemplate>
    </asp:TemplateField>