各位大侠, 我在gridview的模板列中绑定了一个超链接 我想在点击超链接的时候下载

文件的路径我已经存在数据库中。但是当文件是类似txt文本时他就直接打开了,没有出现提示下载或保存的提示框。请问怎么才能触发超链接事件。或者有别的更好的办法。越详细越好。谢... 文件的路径我已经存在数据库中。 但是当文件是 类似 txt文本时 他就直接打开了 , 没有出现提示下载或保存的 提示框 。 请问怎么才能触发 超链接事件 。 或者 有别的更好的办法 。 越详细越好 。 谢谢 展开
 我来答
a530078398
2011-07-15 · 超过32用户采纳过TA的回答
知道答主
回答量:137
采纳率:0%
帮助的人:99万
展开全部
可以用数据流方式读取后用response方式写到页面就会提示下载了,参考代码:
//以下程序在page_Load里
FileStream fs = new FileStream(filePath, FileMode.Open); // 设置文件流,filePath为文件路径byte[] bytes = new byte[(int)fs.Length];fs.Read(bytes, 0, bytes.Length); // 读取
fs.Close();
Response.ClearContent(); // 清楚缓冲区所有内容
Response.ClearHeaders(); // 清楚缓冲区所有头
Response.ContentType = "application/octet-stream"; // 设置输出流的Http MIME类型//通知浏览器下载文件而不是打开
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)); //fileName为需要下载的文件名
Response.BinaryWrite(bytes); // 写入输入流
Response.Flush(); // 向客户端发送数据流
Response.End();
追问
我就是不知道 怎么触发 那个超链接 的事件   他是在 gridview的模板列中 。
请问 我具体该怎么弄, 先谢谢了
追答
什么叫不知道怎么触发事件?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qpxrmztzu
2011-07-16 · TA获得超过515个赞
知道小有建树答主
回答量:538
采纳率:100%
帮助的人:401万
展开全部
linkbuttonr的 CommandArgument 绑定你的第二列的绑定值,
例如:
CommandArgument='<%# Eval("ID").ToString().Trim() %>'
ID就是第二列的值。

在你的RowCommand事件里取值:string strtemp=e.CommandArgument.ToString()
然后写跳转页面的 Response.Redirect("X.aspx?strNO="+strtemp);
另一个页面中 textbox.text=Request.QueryString["strNO"].ToString().Trim()

还有一种方法是直接在前台页面写的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式