在asp.net中的gridview中显示图像

时间:2014-02-05 21:22:32

标签: asp.net vb.net image imagefield

我不确定我做错了什么。我试图在页面上显示图像,它将显示网址但不显示图像。我既尝试了模板字段,也尝试了图像字段。使用Firebug,我可以看到图像源的值。

aspx页面:

 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="ImageID" DataSourceID="Images">
    <Columns>
        <asp:BoundField DataField="ImageID" HeaderText="ImageID" InsertVisible="False" ReadOnly="True" SortExpression="ImageID" />
        <asp:BoundField DataField="InciID" HeaderText="InciID" SortExpression="InciID" />
        <asp:TemplateField HeaderText="Imagepath" SortExpression="Imagepath">
            <EditItemTemplate>
                <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Imagepath") %>'></asp:TextBox>
            </EditItemTemplate>
            <ItemTemplate>
                <asp:image runat="server" ID="Label1" ImageUrl='<%# Bind("Imagepath") %>'></asp:image>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:BoundField DataField="ImageDescription" HeaderText="ImageDescription" SortExpression="ImageDescription" />
        <asp:BoundField DataField="Category" HeaderText="Category" SortExpression="Category" />
        <asp:ImageField DataImageUrlField="Imagepath">
            <ControlStyle Height="100px" Width="100px" />
        </asp:ImageField>
    </Columns>
</asp:GridView>

Firebug网页的源代码:

<td><img id="ctl00_ContentPlaceHolder1_GridView1_ctl15_Label1" src="images\curiouskids.jpg"></td>
<td><img style="height:100px;width:100px;" src="images\curiouskids.jpg"></td>

3 个答案:

答案 0 :(得分:2)

所有斜杠都应该是URL的正斜杠。

images/curiouskids.jpg

答案 1 :(得分:1)

我同意戴夫和普拉文的观点。

斜杠需要是正斜杠,你应该尝试用〜/。

作为前缀

答案 2 :(得分:0)

谢谢你们。我接受了你的建议,并按照下面的代码中的说明对其进行了修改。现在我有一个100x100的缩略图,在其下方我有“放大视图”文本,点击此按钮将在新窗口中打开完整图像。我在代码中添加了tilda和正斜杠,并将其从上传后的代码中删除。

<asp:TemplateField>
      <EditItemTemplate>
           <asp:TextBox ID="TextBox2" runat="server" Text='<%# Eval("Imagepath") %>'></asp:TextBox>
      </EditItemTemplate>
       <ItemTemplate>
            <asp:Image ID="Image1" runat="server" ImageUrl='<%# Eval("Imagepath", "~/images/{0}") %>' Width="150px" Height="150px" /><br />
             <asp:HyperLink ID="HyperLink1" runat="server" Text="Enlarged view" Target="_blank"  NavigateUrl='<%# String.Format("~/images/{0}", Eval("Imagepath"))%>' />
       </ItemTemplate>
 </asp:TemplateField>