设置runat =“server”时图像不显示

时间:2010-07-07 07:51:08

标签: c# asp.net

我有一个图像:

<img src="../pics/img.gif" runat="server" id="imgID" alt="Close" />

除非我删除了runat =“server”,否则不显示图像 这种行为有什么理由吗?

3 个答案:

答案 0 :(得分:3)

必须调用Control.ResolveClientUrl并以错误的路径结束。如果你看一下HTML源代码,你可能会发现出了什么问题。

尝试

<img src="~/pics/img.gif" runat="server" id="imgID" alt="Close" />

设置相对于项目根目录的路径。

答案 1 :(得分:1)

尝试

<asp:image ImageUrl="~/pics/img.gif" runat="server" ID="imgID" AlternateText="Close" />

答案 2 :(得分:0)

我怀疑这是一个权限问题 我有一个名为mkds的项目,位于C:\ web \ mkdata \ mkds。我还有一大组图像位于c:\ Icons。我不想在项目中包含图像,因为它们不经常更改,如果包含它们,备份就不那么方便了。
在VS 2008中,如果设置image1.imageUrl = c:\ Icons.pic1.jpg,您可以在设计器中看到图像,但是当使用内置Web服务器运行页面时,您无法看到它。如果图像被复制到c:\ web \ mkdata \ mkds \ Icons并且URL设置为image1.image =“〜\ Icons \ pic1.jpg”,那么您可以在设计器中看到它,也可以在使用内置Web运行时看到它服务器

如果您在设计器中选择图像,请查看属性,然后单击ImageURl中的省略号按钮,然后VS会为您提供一系列文件夹以从中选择图像,但它们都是项目目录下的子文件夹。