あなたが使用しようとしているアプローチはデータバインディングに基づいていますが、これは一般に1つの画像には適していません。背後にあるコードの中で、次に
<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()"が必要です。
あなたはそれに何を使用していますか?リピータ、gridview?何 ? – Aristos