贪贪博客
菜鸟级人物

    这里我们需要2个页面(A:Image.aspx,B:ImageUrl.aspx)

通过URL传参获取图片路径显示到A页面。

A页面代码:

   1: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Image.aspx.cs" Inherits="Web.Image" %>
   2:  
   3: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
   4: <html xmlns="http://www.w3.org/1999/xhtml">
   5: <head id="Head1" runat="server">
   6:     <title></title>
   7: </head>
   8: <body>
   9:     <form id="form1" runat="server">
  10:     <div>
  11:        <asp:Button ID="btnShowImage" runat="server" Text="显示图片" onclick="btnShowImage_Click" /> 
  12:     </div>
  13:     <div runat="server" id="imgdiv"></div>
  14:     </form>
  15: </body>
  16: </html>

在点击btnShowImage时触发事件,通过后台循环创建Image。

   1: protected void Button1_Click(object sender, EventArgs e)
   2: {
   3:      DataSet ds = //从数据库查询出来的数据
   4:      int piccount = //查询出的数据的总数
   5:      for (int i = 0; i < piccount; i++)
   6:      {
   7:            string picid = ds.Tables[0].Rows[i]["Id"].ToString();//获取此条数据中的主键ID
   8:            Image img = new Image();//创建图片对象
   9:   img.ID = picid;
  10:            img.ImageUrl = "ImageUrl.aspx?id=" + picid; //通过URL传值到B页面
  11:            imgdiv.Controls.Add(img);//将创建的图片对象保存到imgdiv层中
  12:       }
  13: }

B页面主要就是显示图片。通过URL传入的参数不同,创建不同的图片。页面为空白页。

B页面后台代码:

   1: protected void Page_Load(object sender, EventArgs e)
   2: {
   3:    string picid = Request.QueryString["id"];
   4:    byte[] binaryBytes = //通过URL传入的picid查询此ID对应的二进制数
   5:    Response.AddHeader("Content-Length", Convert.ToString(binaryBytes.Length));
   6:    Response.ContentType = "image/jpg";//显示图片的格式
   7:    Response.OutputStream.Write(binaryBytes, 0, binaryBytes.Length);
   8: }

OK了.运行页面,点击按钮试试吧。

posted on 2011-03-23 16:51  贪贪  阅读(1516)  评论(1编辑  收藏  举报