1. 程式人生 > >asp.net 顯示圖片到指定的Image控制元件中

asp.net 顯示圖片到指定的Image控制元件中

    由於asp.net中的Image控制元件是在System.Web.UI.WebControls名稱空間中,所以不能像在winform中那樣通過byte[]直接顯示圖片。

    既然這樣,就只能曲線救國了。這裡的例子是這樣的思路:teacherdetial.aspx是最終用來顯示文字和圖片的頁面,但是由於我們的圖片需要曲線救國,所以這裡另外建立一個pic.aspx。在pic.aspx頁面中我們顯示圖片,而將teacherdetial.aspx中的Image控制元件的url設為pic.aspx。最終我們完成了要求。

teacherdetial.aspx的程式碼如下

  1. <td height=
    "25" align="right">照片:   </td>
  2. <td>
  3.        <asp:Image ID="Image1" runat="server" Width="80" Height="80"/>
  4. </td>

teacherdetial.aspx.cs的程式碼如下

  1. privatestring tid = null;
  2. protectedvoid Page_Load(object sender, EventArgs e)
  3.     {
  4.         tid = Request.Params["tid"];
  5. this.Image1.ImageUrl = 
    "~/teacher/pic.aspx?tid=" + tid;  
  6.     }

這樣我們就將圖片的顯示功能轉移到了另一個頁面,而我們的Image控制元件只是顯示另一個頁面就可以了。

pic.aspx的程式碼很簡單,只是新建了一個頁面就可以了。

pic.aspx.cs的程式碼如下:

  1. protectedvoid Page_Load(object sender, EventArgs e)
  2.     {
  3. string tid = Request.Params["tid"].ToString();
  4.         TeacherDao td = new TeacherDao();
  5.         Response.BinaryWrite(td.getPic(tid));
  6.     }