private void OutImage(Bitmap bm)
    {    ///定义输出的内存流
        MemoryStream ms = new MemoryStream();
        ///保存图像    
        bm.Save(ms,ImageFormat.Png);
        ///清空网页的输出
        Response.ClearContent();
        ///设置网页输出的格式
        Response.ContentType = "Image/png";
        ///输出图像
        Response.BinaryWrite(ms.ToArray());
       
    }   
用这种方式输出是直接显示到网页上,我想把它放到一个image控件里显示,我该如何编写代码呢 我知道另外种方法是在做个页面,里面放个image,然后设置它的imageurl是这个图形的页面,例如  imageUrl="~/display.aspx" ,但我想在一个页面下显示,该如何实现呢?

解决方案 »

  1.   

    保存为图片? 每次都覆盖。URL引用这张图片? 不过必须刷新才能更换图片显示。
    俺是这么想的。
      

  2.   

    <img src="指向你生成图像的页面"/>
      

  3.   

    在同一个文件里显示,可以在这个文件的cs中生成实际的图片,然后在页面的html代码中使用img引用图片路径其实最好的办法就是你单独写一个生成图片的imgshow.aspx页面然后在当前页面中<img src="imgshow.aspx?parm=1"/>
      

  4.   

    也就能做成你说的这样imageUrl="~/display.aspx"
      

  5.   

     上面都说了   
     1 是保存问图片 然后引用
     2 imageUrl="~/display.aspx"
      

  6.   

    在服务器端,生成一张图,保存到硬盘
    然后前台通过脚本,设置一个html控件显示刚生成的这张图片其实一点都不明白你想干什么?
      

  7.   

    受HTTP协议限制,只能按你的后面一个方法做.
      

  8.   

    我绘制了个柱形报表,是更具数据库读出来的。
    但数据会变,所以报表也会变,如果保存到服务器端,我还需要动态绘制吗?还不如就拿EXCEL 绘制个然后复制下来!!!!!
    ===================================================刚才听别人给我说了个
    bm.Save(Server.MapPath("log.jpg"), System.Drawing.Imaging.ImageFormat.Jpeg); 问题还是有,难道我生成一张就要保存一张到服务器端吗?
    =====================================================
    期待高手,再加100分
      

  9.   

    你可以新建一个“.ashx文件”(在2008中是IISHandler1.cs)类似java的servlet,
    然后把你那个生成图片的方法放进去在ProcessRequest方法中调用,最后你image
    控件的url="xxxx.ashx"。来呈现到页面上,你可以上网查找一些关于IHttpHandler
    的资料,这样可能会比你直接包含一个aspx页面好。