来源:http://www.cnblogs.com/damonlan/archive/2012/04/28/2473525.html
作者:浪迹天涯
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { string courseName = ((Label)GridView1.Rows[e.RowIndex].Cells[1].FindControl("Label1")).Text.ToString();//在GridView中文件名字 string time = ((Label)GridView1.Rows[e.RowIndex].Cells[2].FindControl("Label2")).Text.ToString();//在GridView中找时间 string tempPath = BusyworkManage.Path + tm.ReturnTeacherID(Request.Cookies["StudentID"].Value.ToString()) +BusyworkManage.TopicPath + courseName + "/" + courseName + "_" + time + ".doc";//这样做是为了不使下载后的文件的名字重复!~~。 string path = Server.MapPath(tempPath); FileInfo fInfo = new FileInfo(path); string fname = fInfo.Name; Response.Clear(); Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fname)); Response.AddHeader("Content-Length", fInfo.Length.ToString()); Response.ContentType = "application/octet-stream"; Response.WriteFile(fInfo.FullName); Response.Flush();
首先需要说明的是,在gridview控件中放一个button 按钮,如下:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Height="139px" Width="100%" OnRowDeleting="GridView1_RowDeleting" onselectedindexchanged="GridView1_SelectedIndexChanged"> <Columns> 。。。。。。省略代码。。。。。 <asp:BoundField DataField="成绩" HeaderText="成绩"> <ItemStyle HorizontalAlign="Center" /> </asp:BoundField> <asp:CommandField ButtonType="Button" DeleteText="下作业载" ShowDeleteButton="True"> <ItemStyle HorizontalAlign="Center" /> </asp:CommandField> <asp:HyperLinkField Text="提交作业" DataNavigateUrlFormatString="SubmitBusywork.aspx?course={0}&time={1}" DataNavigateUrlFields="课程名称,作业次数"> <ItemStyle HorizontalAlign="Center" /> </asp:HyperLinkField> </Columns> </asp:GridView>
作者:Lanny兰东才
出处:http://www.cnblogs.com/damonlan
Q Q:*********
E_mail:Damon_lan@163.com or Dongcai.lan@hp.com
本博文欢迎大家浏览和转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,在『参考』的文章中,我会表明参考的文章来源,尊重他人版权。若您发现我侵犯了您的版权,请及时与我联系。