图像不在 ImageButton asp.net 中

发布于 2024-11-19 00:39:37 字数 1116 浏览 5 评论 0原文

我在asp.net中使用ListView。我从提供商表中获取数据。根据providerId图像存储在同一文件夹中(如1.jpg,2.jpg)。 我想根据providerID显示图像。 但图像没有显示。但是当我使用简单的 html img 控件时,图像就会显示。 我应该怎么做才能在 ImageButton 中显示图像。

<asp:ListView DataSourceID="ObjectDataSource1" ItemPlaceholderID="dd" ID="ddlprovider" 
runat="server">

        <LayoutTemplate>
            <ul>
                <asp:PlaceHolder ID="dd" runat="server"/>
            </ul>
        </LayoutTemplate>
        <ItemTemplate>
            <asp:ImageButton runat="server" ImageUrl='<%#Eval("ProviderID") %>.jpg' ID="imgButton" />//Not work
            <asp:LinkButton runat="server" CommandArgument='<%#Eval("ProviderID") %>'/>
        </ItemTemplate>
    </asp:ListView>
    <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" 
        DeleteMethod="Delete" InsertMethod="Insert" 
        OldValuesParameterFormatString="original_{0}" SelectMethod="FetchAll" 
        TypeName="mogile.MidTier.DAL.ProviderController" UpdateMethod="Update">
    </asp:ObjectDataSource>

I use ListView in asp.net. I get data from provider table. According providerId image is stored in same folder(like 1.jpg,2.jpg).
I want to display image according to providerID.
But Image is not showing. but when i use simple html img control then image is showing.
What should i do for show image in ImageButton.

<asp:ListView DataSourceID="ObjectDataSource1" ItemPlaceholderID="dd" ID="ddlprovider" 
runat="server">

        <LayoutTemplate>
            <ul>
                <asp:PlaceHolder ID="dd" runat="server"/>
            </ul>
        </LayoutTemplate>
        <ItemTemplate>
            <asp:ImageButton runat="server" ImageUrl='<%#Eval("ProviderID") %>.jpg' ID="imgButton" />//Not work
            <asp:LinkButton runat="server" CommandArgument='<%#Eval("ProviderID") %>'/>
        </ItemTemplate>
    </asp:ListView>
    <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" 
        DeleteMethod="Delete" InsertMethod="Insert" 
        OldValuesParameterFormatString="original_{0}" SelectMethod="FetchAll" 
        TypeName="mogile.MidTier.DAL.ProviderController" UpdateMethod="Update">
    </asp:ObjectDataSource>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

断舍离 2024-11-26 00:39:37

您不应该在末尾带有字符串的属性中放置代码中断。

尝试将代码行更改为:

<asp:ImageButton runat="server" ImageUrl='<%# string.format("{0}.jpg", Eval("ProviderID")) %>' ID="imgButton" />

编辑:
如果您希望显示默认图像(如果该图像不存在),则需要将代码修改为:

<asp:ImageButton runat="server" ImageUrl='<%# GetImageURL(Eval("ProviderID")) %>' ID="imgButton" />

Function GetImageURL(ProviderID as Integer) as String
    Dim ImageFileName as string = string.format("[image path here]/{0}", ProviderID)
    If Not File.Exists(server.mappath(imagefilename)) then imagefilename = "[default image path here]
    Return ImageFileName
End Function

You shouldn't put code breaks in an attribute with a string at the end like that.

Try changing the line of code to:

<asp:ImageButton runat="server" ImageUrl='<%# string.format("{0}.jpg", Eval("ProviderID")) %>' ID="imgButton" />

EDIT:
If you wish to display a default image if this one doesn't exist you'll need to modify the code to:

<asp:ImageButton runat="server" ImageUrl='<%# GetImageURL(Eval("ProviderID")) %>' ID="imgButton" />

Function GetImageURL(ProviderID as Integer) as String
    Dim ImageFileName as string = string.format("[image path here]/{0}", ProviderID)
    If Not File.Exists(server.mappath(imagefilename)) then imagefilename = "[default image path here]
    Return ImageFileName
End Function
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文