我想在img控件中显示图像。
Asp代码:
<asp:Image id="id" src='<%# Eval("Item.SmallPicPath") %>' Runat="Server" >
C#代码:
public void Page_Load(Object sender, EventArgs e)
{
Glasses item=GetItemByID(GlassesID) //retrive record from data base
}
眼镜是一个具有属性SmallPicPath的类。
我尝试显示图片,但我知道如何解决它的错误?
提前谢谢!
答案 0 :(得分:2)
您尝试使用的方法基于数据绑定,这通常对单个图像不利。
相反,尝试这样的标记:
<asp:Image id="MyImageId" runat="server">
然后,在你的代码背后:
public void Page_Load(Object sender, EventArgs e)
{
Glasses item = GetItemByID(GlassesID); //retrive record from data base
this.MyImageId.ImageUrl = item.SmallPicPath;
}
如果你仍然想出于某些原因使用数据绑定,那么这样的事情应该有效(尽管与其他方法相比有性能成本):
<asp:Image id="MyImageId" runat="server" ImageUrl="<%# item.SmallPicPath %>">
代码隐藏:
public Glasses item;
public void Page_Load(Object sender, EventArgs e)
{
this.item = GetItemByID(GlassesID); //retrive record from data base
this.MyImageId.DataBind();
}
数据绑定是一项可选操作;你需要在控件(或其父级)上调用DataBind()
来实现它。
在涉及数据容器(通常通过DataSource
)的情况下,您只需要“Eval()” - 这不是。
答案 1 :(得分:0)
<asp:Image id="id" ImageUrl='<%# Eval("Item.SmallPicPath") %>' Runat="Server" >
Eval表达式可能不是Item.SmallPicPath。如果您的数据对象是 Glass 的类型,并且此类型具有SmallPicPath属性,则使用Eval(“SmallPicPath”)。