2014-10-07 89 views
1

虽然URL是正确的,但我无法在Image或ImageButton控件中显示图像。我通过在地址栏中浏览来测试网址。它适用于数据uri而不适用于位置。图像未在Asp.net图像控件和ImageButton中显示

我在页面加载时将图像分配给控件。以下是CS代码:

Image1.ImageUrl = Server.MapPath(“UserDP \\ 14.jpeg”);

我看到一个空的图像控件。

+1

请发表您的标签(HTML)。 – 2014-10-07 12:03:00

+0

Image1.ImageUrl = Server.MapPath(“UserDP \ 14.jpeg”); – 2014-10-07 12:26:34

+0

使用斜杠“/”而不是反斜杠“\” – tdragon 2014-10-07 12:37:14

回答

3

Server.MapPath将物理路径返回到指定位置。

在HTML中,您需要指定URL而不是物理路径。

例(错误):

<img src="C:\temp\UserDP\14.jpeg" /> 

示例(正确):

<img src="UserDP/14.jpeg" /> 

解决你的问题:

删除Server.MapPath和使用下列字符串为ImageUrl

Image1.ImageUrl = "~/UserDP/14.jpeg"; 

ASP.NET会自动替换~与应用程序的基本URL,因为Image1是一个服务器控件。如果您的UserDP文件夹位于应用程序目录的第一级,这应该可以工作。

+0

抱歉回覆迟到。谢谢您的帮助。有效。我尝试了你的想法,我的习惯是对其他文件操作使用MapPath。再次感谢。 – 2014-10-10 17:03:01

0

从MSDN:Image.ImageUrl Property

使用ImageUrl属性指定图像的URL图像控件

所以你必须键入URL地址(绝对/完整的地址或相对地址显示);

例如。完整地址:

Image1.ImageUrl = "http://localhost:5000/myApp/Content/Images/14.jpeg"); 

例如。相对地址:

Image1.ImageUrl = "Content/Images/14.jpeg"); 
+0

感谢您的建议。我是新用户,这就是为什么我还没有投票。 – 2014-10-10 17:04:25