Solved

DataList control in ASP.NET not showing images

Posted on 2011-02-17
5
1,179 Views
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">
        <ItemTemplate>
            <img src='<%# Eval("FullName") %>' width="150" style="border:1px solid gray;" height="250" />
            <hr />
        </ItemTemplate>
        </asp:DataList>

Open in new window

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

            dlImages.DataSource = objDI.GetFiles();
            dlImages.DataBind();
        }

Open in new window

0
Comment
Question by:fishbowlstudios
[X]
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
5 Comments
 
LVL 56

Expert Comment

by:HainKurt
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

0
 
LVL 56

Accepted Solution

by:
HainKurt earned 500 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
0
 

Expert Comment

by:pavan_kumar_kokkiragedda
ID: 34923718
Hi,
I think you need to change the src attribute value to this

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

hope it helps.
0
 
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"
                    DataKeyField="Image_Id"
                    RepeatDirection="Horizontal" onitemcreated="dListItems_ItemCreated"
                    onitemdatabound="dListItems_ItemDataBound">
                                <ItemTemplate>
                              <!-- 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" />
                   
                    </a>
                    <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" />
                            </p>
                           
                            </p>
                                    </div>
                        <div id="ProductRelatedImage">
                            <asp:DataList ID="DataList1" runat="server" DataKeyField="Prod_ImagePath" DataSourceID="SqlDataSource6"
                            RepeatColumns="4" RepeatDirection="Horizontal" Width="40px" Height="40px">
                        <ItemTemplate>
                            <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" />
                            </div>
                        </ItemTemplate>
                        </asp:DataList>
                        <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)">
            <SelectParameters>
             
                <asp:ControlParameter Name="Prod_Id" ControlID="Label1" Type="Int32" />
            </SelectParameters>
        </asp:SqlDataSource>
                       
                        </div>                                                            
                                    
                            </div>
                    </li>
                      </div>                      <!-- box end -->
                                </ItemTemplate>
                               
               </asp:DataList>
            </ul>            
        <asp:SqlDataSource ID="SqlDataSource1" runat="server"
            ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
           
            SelectCommand="SELECT [Prod_ImageId], [Prod_ImagePath], [Prod_Id] FROM [Product_Images]">
        </asp:SqlDataSource>
0
 
LVL 11

Expert Comment

by:SAMIR BHOGAYTA
ID: 34924549
0

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

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

A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
There's a multitude of different network monitoring solutions out there, and you're probably wondering what makes NetCrunch so special. It's completely agentless, but does let you create an agent, if you desire. It offers powerful scalability …
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…

624 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