【问题标题】:Image1.ImageUrl = .. does not change the picture on the WEB pageImage1.ImageUrl = .. 不改变WEB页面上的图片
【发布时间】:2012-04-09 07:02:27
【问题描述】:

我在 C# VS 2010 上开发 WEB 应用程序。 我有带有按钮和图像控件的 WEB 表单。 我在位图中绘制自己的图像。

        bitmap.Save(Server.MapPath("pic1.jpg"), ImageFormat.Jpeg);
        Image1.ImageUrl = Server.MapPath("pic1.jpg");

问题是上面的代码没有改变“Image1”中的图片

我也尝试如下: bitmap.Save(Response.OutputStream,ImageFormat.Jpeg); 有用。我看到了我的形象。 但我在 WEB 页面上没有看到任何其他控件: 没有我的按钮、标签等。 只有页面上的图像。

也许我必须以某种不同的方式将位图中自己的图像绑定到 Image1?

谢谢。

【问题讨论】:

  • 这段代码会发生什么?文件是否正在保存?此代码何时执行与页面输出相关的?也许您在将Image1.ImageUrl 渲染到浏览器之后设置它?我们需要更多关于这段代码的上下文。 (此外,您还尝试过的操作导致了预期的行为。如果您向浏览器输出 only 图像,那么浏览器将看到的就是所有图像。)

标签: c# asp.net web


【解决方案1】:

Server.MapPath 返回一个文件名。另一方面,Image.ImageUrl 需要一个有效的 url

您希望文件名如何神奇地充当 url?

你宁愿想要类似的东西

Image1.ImageUrl = this.ResolveUrl( "pic1.jpg" );

或类似的东西可以解析到可导航uri的路径。

【讨论】:

  • 但是我的第二个问题呢?为什么使用 bitmap.Save(Response.OutputStream,ImageFormat.Jpeg);我在页面上只看到这张图片。页面上没有其他我的控件(按钮、标签等)
  • Http/html 不能这样工作 - 你只是不能在同一个响应流中拥有图像和 html!
猜你喜欢
  • 2013-04-07
  • 1970-01-01
  • 1970-01-01
  • 2011-08-16
  • 1970-01-01
  • 2013-02-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多