Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


DataList control in ASP.NET not showing images

Posted on 2011-02-17
Medium Priority
Last Modified: 2013-12-17
I am working on a photo gallery but the DataList is not showing the images in the folder. It will show the placeholder but not the actual images.
<asp:DataList ID="dlImages" runat="server" RepeatColumns="3" RepeatDirection="Horizontal" Width="100%" CellPadding="2" CellSpacing="0">
            <img src='<%# Eval("FullName") %>' width="150" style="border:1px solid gray;" height="250" />
            <hr />

Open in new window

private void LoadDataList()
            string imageFolder = MapPath("PostedImages");
            DirectoryInfo objDI = new DirectoryInfo(imageFolder);

            dlImages.DataSource = objDI.GetFiles();

Open in new window

Question by:fishbowlstudios
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
LVL 59

Expert Comment

ID: 34923430
meaning they are showing the right path...

post rendered html and show where that page is on your web app, and show us where are the images

LVL 59

Accepted Solution

HainKurt earned 2000 total points
ID: 34923438
probably you should use something like this

<img src='images\<%# Eval("Name") %>' width="150" style="border:1px solid gray;" height="250" />

assuming you are getting files list under images folder relative to the running page.... and you should use Name not FullName

Expert Comment

ID: 34923718
I think you need to change the src attribute value to this

src='<%# DataBinder.Eval(Container.DataItem,"FullName") %>'

hope it helps.
LVL 19

Expert Comment

by:Manoj Patil
ID: 34924085
Hi check following code, so you will get an idea to show Image and other Details

 <asp:DataList ID="dListItems" runat="server" RepeatColumns="4" width="300px"
                    RepeatDirection="Horizontal" onitemcreated="dListItems_ItemCreated"
                              <!-- box start -->
                              <div class="col-1 new-users">
                                                <li class="prodlistitem" id="listproduct_iPhone_4_12" style="background-image: url('"<%# Eval("Prod_ImagePath") %>"');">

                                                    <asp:Label ID="Label1" runat="server" Text='<%# Eval("Prod_Id") %>' Visible="false"></asp:Label>
                              <h3><a href="Product_Details.aspx?<%# Eval("Prod_Id") %>" id="listproduct_iPhone_4 1"><%# Eval("Prod_Name") %></a></h3>
                              <a href="Product_Details.aspx?PID=<%# Eval("Prod_Id") %>" class="full-item-click">
                    <asp:Image ID="listproduct_iPhone_4_1" runat="server" Height="110px" ImageUrl='<%# Eval("Prod_ImagePath") %>' data-zoomsrc='<%# Eval("Prod_ImagePath") %>'  Width="110px" />
                    <div class="product-meta">
                                    <div class="price">
                                          <a href="Product_Details.aspx" class="price" id="listproduct_iPhone_4"><%# Eval("Prod_Price_inDoller")%></a>
                                <asp:Button ID="Button2" runat="server" Text="Add to Cart" CommandName="image" Visible="false" CommandArgument='<%# Eval("Prod_Id") %>' OnClick="AddToCart" BackColor="#08a5bd" ForeColor="White" />
                        <div id="ProductRelatedImage">
                            <asp:DataList ID="DataList1" runat="server" DataKeyField="Prod_ImagePath" DataSourceID="SqlDataSource6"
                            RepeatColumns="4" RepeatDirection="Horizontal" Width="40px" Height="40px">
                            <div style="border:1px">
                                <h1><asp:Label ID="Label7" runat="server" Text='<%# Eval("Prod_Name") %>' Visible="false"></asp:Label></h1>
                                <a href="Product_Details.aspx?PID=<%# Eval("Prod_Id") %>"><asp:Image ID="Image7" runat="server" Height="30px"
                                    ImageUrl='<%# Eval("Prod_ImagePath") %>' Width="30px" Visible="false" /></a>
                                    <img alt="" src='<%# Eval("Prod_ImagePath") %>' data-zoomsrc='<%# Eval("Prod_ImagePath") %>' id="myimage" Height="30px" Width="30px" />
                        <asp:SqlDataSource ID="SqlDataSource6" runat="server"
            ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
        SelectCommand="SELECT Product.Prod_Id, Product.Prod_Name, Product.Prod_Price_inDoller, Product_Images.Prod_ImagePath, Category.Cat_Id
                        FROM Category INNER JOIN
                        Product ON Category.Cat_Id = Product.Cat_Id INNER JOIN
                        Product_Images ON Product.Prod_Id = Product_Images.Prod_Id
                        WHERE (Product.Prod_Id = @Prod_Id)">
                <asp:ControlParameter Name="Prod_Id" ControlID="Label1" Type="Int32" />
                      </div>                      <!-- box end -->
        <asp:SqlDataSource ID="SqlDataSource1" runat="server"
            ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
            SelectCommand="SELECT [Prod_ImageId], [Prod_ImagePath], [Prod_Id] FROM [Product_Images]">
LVL 11

Expert Comment

ID: 34924549

Featured Post

Fill in the form and get your FREE NFR key NOW!

Veeam® is happy to provide a FREE NFR server license to certified engineers, trainers, and bloggers.  It allows for the non‑production use of Veeam Agent for Microsoft Windows. This license is valid for five workstations and two servers.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
This article shows how to deploy dynamic backgrounds to computers depending on the aspect ratio of display
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…
In this video, Percona Solution Engineer Dimitri Vanoverbeke discusses why you want to use at least three nodes in a database cluster. To discuss how Percona Consulting can help with your design and architecture needs for your database and infras…

660 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question