【问题标题】:Image won't display in user control图像不会显示在用户控件中
【发布时间】:2010-10-19 11:49:10
【问题描述】:

我有一个带有图像的用户控件..当我将它添加到没有母版页的页面时..图像显示正常但是当我将相同的用户控件添加到具有母版页。图像消失了!....当我检查页面源时,图像的路径是这样的..

style = "background-image: url(http://localhost/web1/img1.jpg);"

图片也存在!不是说它被删除或其他什么..

现在 idk 我在哪里读到了这篇文章,但是我在某处做了,当添加了母版页并使用了用户控件时..ID 被更改或什么..不确定..idk..如果是这样..ID 到底是怎么做的得到改变,为什么和什么?我只是不知道可能出了什么问题..我该如何测试它?

[编辑] 我再次仔细检查了页面源,并猜测某些 div 标签 ID 发生了哪些变化! ..我得到了一个 ID 为“div1”的 div ..这个 div 内部是我的 Sprite 图像..现在这个“div1”正在更改为 ....“ctl00_ContentPlaceHolder2_ctl00_Banner_ctl00_ContentPlaceHolder2_ctl00_Banner_div1” ...横幅是 UserControl 类型的变量在我的测试页面中声明(我在后面的代码中添加 UserControl)...更多 Div 的 ID 正在以类似的方式更改...现在我该怎么处理这些更改的 ID? ...请帮助..thnx**

【问题讨论】:

  • 这个问题是重复的(stackoverflow.com/questions/3912273/…你可以给我发评论,我会和你一起调试它。无论如何,你能在网上提供一个我可以调试的测试页面吗?
  • @Mouhannad :: heya..sry 我完全忘记了我的那个问题:/它甚至没有出现在类似的问题列表中..在我读到改变 ID 的地方很难思考..在这里这是..thnx 给你...抱歉由于某种原因无法发布测试页面代码...在此处和之前的问题中添加详细信息...希望您会阅读它们:(

标签: c# asp.net


【解决方案1】:

这个答案来自Image from usercontrol won't display on webform

自从您发现 id 更改是 是什么导致了问题,唯一的 解决方案是使用类来设置样式 您的 html 标记:

html

//some people don't know this but you can also put the style directly
into the asp.net control event if
visual studio doesn't support it in
the intellisense
<asp:Label id="label1" CssClass="test" style="color:blue;"
runat="server" />

css

.test { color:red; }

如果你还想用 id 来 样式你的代码,那么你可以 将生成的长 id 放入您的 css 代码或升级到 asp.net 4 其中 控制您的 asp.net id, 例如:

<asp:Label id="label1" ClientIDMode="Static" runat="server"

/>

有 3rd 方解决方案可以提供 您对 asp.net 的 ID 的控制 3.5 及以下,但它们不是开箱即用的,需要一些摆弄。

【讨论】:

【解决方案2】:

就这样使用。 /web1/img1.jpg 并单击解决方案而不是属性页面。有一个虚拟页面。将其更改为“/”。

【讨论】:

    猜你喜欢
    • 2010-12-05
    • 2012-07-05
    • 1970-01-01
    • 2013-11-12
    • 1970-01-01
    • 1970-01-01
    • 2014-08-03
    • 2014-11-06
    相关资源
    最近更新 更多