在ASP.NET中使用RowDataBound在gridview中显示图像

时间:2015-04-28 12:39:17

标签: c# asp.net image gridview

无法在gridview中显示图像。没有错误消息,只显示图像图标而不是数据库中的实际图像

我有一个gridview,我正在使用RowDataBound事件来显示标签中的信息。我在gridview中有一个Image控件

<asp:TemplateField HeaderText="Picture">
                    <ItemTemplate>
                        <asp:Image ID="imgPicture" runat="server" />
                    </ItemTemplate>
                </asp:TemplateField>

图像路径存储在名为Image Images\image.jpg的列下的数据库中 它存储在解决方案中名为Images的文件夹中

的RowDataBound

        Image imgPicture = (Image)e.Row.FindControl("imgPicture");
        if ((imgPicture != null))
        {
            imgPicture.ImageUrl = @"~\Images\" + (string)DataBinder.Eval(e.Row.DataItem, "Image");
        }

1 个答案:

答案 0 :(得分:1)

我不会使用RowDataBound-Event:

 <asp:TemplateField HeaderText="Picture">
    <ItemTemplate>
        <asp:Image ID="imgPicture" runat="server" ImageUrl='<%# Eval("Image", "~/Images/{0}") %>' />
    </ItemTemplate>
</asp:TemplateField>