Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chriss Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Dynamically Create DataLists 1

Status
Not open for further replies.

gpalmer711

IS-IT--Management
May 11, 2001
2,445
GB
Hi All,

I've been working on a Project recently which is basically a website for venues(food) to be listed on and display their menus.

The project is almost finished now and all the code is working perfectly, partially thanks to some help received here.

However there is one aspect of the site that I would like to improve on, however dispite googling this for several hours I have not come across a solution.

Basically on the menu display page I have numerous Datalists set up that display the different categories, i.e. starters, desserts etc..

These have been created manually in the code and are populated at runtime if there are products in that category in the database for that venue.

Each venue has been given it's own table in the database for the menu items.

What I would like to do it have a table that contains all the categories, the code would then look through the categories in that table in the correct order. If the category exists in the venues table then a datalist will be created and populated, if not then it moves on to the next category.

I hope that makes sense. So basically what I am wanting to do is create Datalists on the fly, but this doesn't seem possible, is there another way round it?

I've added my code below which may help

Code for venues.aspx
Code:
<%@ Page Language="VB" MasterPageFile="~/MenuSite.master" AutoEventWireup="false" CodeFile="venue.aspx.vb" Inherits="venue" title="SearchForAMenu.co.uk - Venue Details Page" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <div id="mainVenueContainer">
    
    <div id="mainVenueTitleIcons">
        <asp:ImageButton ID="imgAddFave" ImageUrl="images/fave.jpg" Height="40px" Width="46px" AlternateText="Add Venue to Favorite Venues" runat="server" />
        <asp:ImageButton ID="imgMap" ImageUrl="images/map.jpg" Height="40px" Width="44px" AlternateText="View Map of Venue and Route" runat="server" OnClick="imgMap_Click" />
        <asp:ImageButton ID="imgPrint" ImageUrl="images/print.jpg" Height="40px" Width="43px" AlternateText="Printer Friendly Menu" runat="server" />
        <asp:ImageButton ID="imgEmail" ImageUrl="images/email.jpg" Height="40px" Width="46px" AlternateText="Email Venue to Friend" runat="server" />
    </div>
    <asp:DataList ID="venueDetails" runat="server">
        <ItemTemplate>
        <div id="venueDetailsContainer">
            <div id="mainVenueLofTitle">&nbsp;</div>
            <div id="mainVenueTitle"><%# DataBinder.Eval(Container.DataItem, "name")%></div>
            
            <div id="menuVenueSpacer" class="menuVenueSpacer">&nbsp;</div>
            
            <div id="mainVenueLofImage">&nbsp;</div>
            <div id="mainVenueImage"><img src="<%#DataBinder.Eval(Container.DataItem, "mainpic")%>" alt="Photo of Venue" /></div>
            <div id="mainVenueRofImage">&nbsp;</div>
            <div id="mainVenueDetails"><%# IsStringNull(DataBinder.Eval(Container.DataItem, "address1"),", ")%><%#IsStringNull(DataBinder.Eval(Container.DataItem, "address2"),", ")%>
            <%# IsStringNull(DataBinder.Eval(Container.DataItem, "address3"),", ")%><%# IsStringNull(DataBinder.Eval(Container.DataItem, "town"),", ")%><%# IsStringNull(DataBinder.Eval(Container.DataItem, "county"),", ")%>
            <%# IsStringNull(DataBinder.Eval(Container.DataItem, "postcode"),".")%><br /><br />
            <%#IsStringNull(DataBinder.Eval(Container.DataItem, "tel_no1"), "")%><br /><br />
            <%#ratingsBuilder((DataBinder.Eval(Container.DataItem, "rating")), (DataBinder.Eval(Container.DataItem, "ID")))%><br />
            <%#iconBuilder(DataBinder.Eval(Container.DataItem, "ID"))%>
            </div>
            <div id="mainVenueRofDetails">&nbsp;</div>
            
            <div id="mainVenueLofRatings">&nbsp;</div>
            <div id="mainVenueDescription"><%#DataBinder.Eval(Container.DataItem, "details")%><br /><br />Opening Hours<br /><%#DataBinder.Eval(Container.DataItem, "opening_hours")%></div>
            <div id="mainVenueRofIcons">&nbsp;</div>
            
            <div id="menuVenueSpacer1" class="menuVenueSpacer">&nbsp;</div>
            <% response.write("<script src=""[URL unfurl="true"]http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAyf4W6D3CvXE_0rtxVGArixQGnqG7QdQtB9xfzSANrVGmEyEqXRRWCYigQTACLXNbNjhbEXPG9XLMcQ""[/URL] type=""text/javascript""></script>" & vbCrLf)%>
            <% response.write("<script type=""text/javascript"">" & vbCrLf)%>
            <% response.write("//<![CDATA[" & vbCrLf)%>
            <% response.write("function showmap() {" & vbCrLf)%>
            <% response.write("if (GBrowserIsCompatible()) {" & vbCrLf)%>
            <% response.write("var map = new GMap2(document.getElementById(""map""));" & vbCrLf)%>
            <% response.write("map.addControl(new GSmallMapControl());map.addControl(new GMapTypeControl());" & vbCrLf)%>
            <% Response.Write("map.setCenter(new GLatLng(")%>
            <%#DataBinder.Eval(Container.DataItem, "latitude")%>
            <% response.write(", ")%>
            <%#DataBinder.Eval(Container.DataItem, "longitude")%>
            <% Response.Write("), 15);" & vbCrLf)%>
            <% response.write("map.addOverlay(new GMarker(map.getCenter()));" & vbCrLf)%>
            <% response.write("}" & vbCrLf)%>
            <% response.write("}" & vbCrLf)%>
            <% response.write(" //]]>" & vbCrLf)%>
            <% response.write("</script>" & vbCrLf)%>
        </div>
        </ItemTemplate>
    </asp:DataList>
    <asp:Panel ID="pnlMap" runat="server" Height="350px" Width="580px" Visible="False">
        <div id="map" style="width: 580px; height: 350px"></div>
    </asp:Panel>
    </div>

********************************************************
This is the start of the part I would like to create dynamically
*********************************************************

    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplatePizzas" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Pizzas</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateDoner" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Doner Kebabs</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateBurgers" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Burgers</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateJacketPotatoes" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Jacket Potatoes</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateMainDishes" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Main Dishes</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplatePasta" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Pasta</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateSideDishes" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Side Dishes</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateDeserts" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Deserts</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateDrinkCans" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Drinks - Cans</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateDrinkWine" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Drinks - Wine</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateDrinkBeers" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Drinks - Beers</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>
    
    
    <asp:DataList cssclass="menuTemplate" ShowHeader="false" ShowFooter="false" ID="menuTemplateSpecialOffers" runat="server">
        <HeaderTemplate>
            <div id="menuSubHeading" class="menuSubHeading">Special Offers</div>
        </HeaderTemplate>
        <ItemTemplate>
            <div class="menuContainer" id="menuContainer1">
                <div id="menuItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </ItemTemplate>
        <AlternatingItemTemplate>
            <div class="menuAltContainer" id="menuAltContainer1">
                <div id="menuAltItem"><%#DataBinder.Eval(Container.DataItem, "name")%><br /><span class="menuItemDesc"><%#DataBinder.Eval(Container.DataItem, "description")%></span></div>
                <div id="menuAltPrice1"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size1_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size1_price"))%></div>
                <div id="menuAltPrice2"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size2_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size2_price"))%></div>
                <div id="menuAltPrice3"><span class="menuPriceDesc"><%#DataBinder.Eval(Container.DataItem, "size3_desc")%></span><br /><%#formatPrice(DataBinder.Eval(Container.DataItem, "size3_price"))%></div>
            </div>
        </AlternatingItemTemplate>
        <FooterTemplate>
            <div id="menuSubFooter"></div>
        </FooterTemplate>
    </asp:DataList>

********************************************************
This is the start of the part I would like to create dynamically
*********************************************************

</asp:Content>

code for venues.vb
Code:
Partial Class venue
    Inherits System.Web.UI.Page

    Sub GetProductDetails()
        Dim DS As New DataSet
        Dim strConnString As String = ConfigurationManager.ConnectionStrings("MenuDB").ConnectionString
        Dim objSQLAdapter As New SqlDataAdapter("SELECT * FROM [menu_venues] Where ID = " & Request.QueryString("id"), strConnString)
        objSQLAdapter.Fill(DS, "[menu_venues]")
        venueDetails.DataSource = DS.Tables("[menu_venues]").Copy
        venueDetails.DataBind()
    End Sub
    
    Sub GetMenuItems(ByVal intCat As Integer, ByVal strDatalist As DataList)
        Dim DS1 As New DataSet
        Dim strConnString As String = ConfigurationManager.ConnectionStrings("MenuDB").ConnectionString
        Dim objSQLAdapter As New SqlDataAdapter("SELECT * FROM [menu_items_" & Request.QueryString("id") & "] Where category_id = " & intCat, strConnString)
        objSQLAdapter.Fill(DS1, "[menu_items_" & Request.QueryString("id") & "]")
        If DS1.Tables.Item(0).Rows.Count <> 0 Then
            strDatalist.ShowFooter = True
            strDatalist.ShowHeader = True
            strDatalist.DataSource = DS1.Tables("[menu_items_" & Request.QueryString("id") & "]").Copy
            strDatalist.DataBind()
        End If
    End Sub

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim Body As HtmlGenericControl = CType(Page.Master.FindControl("MasterBody"), HtmlGenericControl)
        Body.Attributes("onload") = "showmap()"
        Body.Attributes("onunload") = "GUnload()"
        If Page.ClientQueryString <> "" Then
            If Request.QueryString("id") = vbNullString Then Response.Redirect("siteerrors.aspx?" & Page.ClientQueryString & "&message=NOVR")
        Else
            If Request.QueryString("id") = vbNullString Then Response.Redirect("siteerrors.aspx?message=NOVR")
        End If
        SaveVenueVisit()
        GetProductDetails()
        GetMenuItems(1, menuTemplatePizzas)
        GetMenuItems(2, menuTemplateDoner)
        GetMenuItems(3, menuTemplateBurgers)
        GetMenuItems(4, menuTemplateJacketPotatoes)
        GetMenuItems(5, menuTemplateMainDishes)
        GetMenuItems(6, menuTemplateSideDishes)
        GetMenuItems(7, menuTemplateDeserts)
        GetMenuItems(8, menuTemplateDrinkCans)
        GetMenuItems(9, menuTemplateDrinkWine)
        GetMenuItems(10, menuTemplateDrinkBeers)
        GetMenuItems(11, menuTemplatePasta)
        GetMenuItems(12, menuTemplateSpecialOffers)
    End Sub

    Public Function formatPrice(ByVal myPrice)
        If myPrice Is DBNull.Value Then
            myPrice = ""
        Else
            myPrice = Format(myPrice, "currency")
        End If
        Return myPrice

        myPrice = Nothing
    End Function

    Public Function IsStringNull(ByVal strString, ByVal strSeperator)
        If strString Is DBNull.Value Then
            strString = ""
        Else
            strString = strString & strSeperator
        End If
        Return strString
    End Function
    Public Sub SaveVenueVisit()
        Dim DS As New DataSet
        Dim paramID As New SqlParameter("@venue_id", SqlDbType.Int)
        Dim strConnString As String = ConfigurationManager.ConnectionStrings("MenuDB").ConnectionString
        Using connection As New SqlConnection(strConnString)
            Dim objSQLAdapter As New SqlDataAdapter
            objSQLAdapter.SelectCommand = New SqlCommand("dbo.StoreVisit", connection)
            objSQLAdapter.SelectCommand.CommandType = CommandType.StoredProcedure
            paramID.Value = Request.QueryString("id")
            objSQLAdapter.SelectCommand.Parameters.Add(paramID)
            objSQLAdapter.Fill(DS, "[visits]")
        End Using

    End Sub

    Public Function iconBuilder(ByVal intID As Integer)
        Dim strIcons As String
        Dim intIconCount As Integer
        intIconCount = 0
        Dim DS As New DataSet
        Dim strConnString As String = ConfigurationManager.ConnectionStrings("MenuDB").ConnectionString
        Dim objSQLAdapter As New SqlDataAdapter("SELECT * FROM [menu_venues] Where ID = " & intID, strConnString)
        objSQLAdapter.Fill(DS, "[menu_venues]")
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("pizza") = True Then
                strIcons = strIcons & "<img src=""images/icons/pizza.jpg"" alt=""Pizza"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("alcohol") = True Then
                strIcons = strIcons & "<img src=""images/icons/alcohol.jpg"" alt=""Alcohol Served"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("babychange") = True Then
                strIcons = strIcons & "<img src=""images/icons/babychange.jpg"" alt=""Baby Changing Facilities"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("bottlewarming") = True Then
                strIcons = strIcons & "<img src=""images/icons/bottlewarming.jpg"" alt=""Baby Food & Bottle Warming Available"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("burgers") = True Then
                strIcons = strIcons & "<img src=""images/icons/burgers.jpg"" alt=""Various Burgers Available"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("playarea") = True Then
                strIcons = strIcons & "<img src=""images/icons/childrenwelcome.jpg"" alt=""Children Welcome / Play Area"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("chinese") = True Then
                strIcons = strIcons & "<img src=""images/icons/chinese.jpg"" alt=""Chinese / Cantonese"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("delivery") = True Then
                strIcons = strIcons & "<img src=""images/icons/delivery.jpg"" alt=""Delivery Service Available"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("desserts") = True Then
                strIcons = strIcons & "<img src=""images/icons/dessert.jpg"" alt=""Dessert Menu"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("fish") = True Then
                strIcons = strIcons & "<img src=""images/icons/fish.jpg"" alt=""Traditional Fish Dishes"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("seafood") = True Then
                strIcons = strIcons & "<img src=""images/icons/seafood.jpg"" alt=""Seafood Dishes"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("friedchicken") = True Then
                strIcons = strIcons & "<img src=""images/icons/friedchicken.jpg"" alt=""Fried Chicken (Southern Style)"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("glutenfree") = True Then
                strIcons = strIcons & "<img src=""images/icons/glutenfree.jpg"" alt=""Gluten Free Options"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("halal") = True Then
                strIcons = strIcons & "<img src=""images/icons/halal.jpg"" alt=""Halal Meals Available"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("indian") = True Then
                strIcons = strIcons & "<img src=""images/icons/indian.jpg"" alt=""Traditional Indian Dishes"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("italian") = True Then
                strIcons = strIcons & "<img src=""images/icons/italian.jpg"" alt=""Traditional Italian Dishes"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("japanese") = True Then
                strIcons = strIcons & "<img src=""images/icons/japanese.jpg"" alt=""Traditional Japanese Dishes"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        'If intIconCount < 15 Then
        'If DS.Tables(0).Rows(0).Item("kebabs") = True Then
        'strIcons = strIcons & "<img src=""images/icons/kebabs.jpg"" alt=""Kebabs"" />"
        'intIconCount = intIconCount + 1
        'End If
        'End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("kosher") = True Then
                strIcons = strIcons & "<img src=""images/icons/kosher.jpg"" alt=""Kosher Meals Available"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("mexican") = True Then
                strIcons = strIcons & "<img src=""images/icons/mexican.jpg"" alt=""Traditional Mexican Dishes - Tex-Mex"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("sandwiches") = True Then
                strIcons = strIcons & "<img src=""images/icons/sandwiches.jpg"" alt=""Range of Sandwiches Available"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        If intIconCount < 15 Then
            If DS.Tables(0).Rows(0).Item("vegetarian") = True Then
                strIcons = strIcons & "<img src=""images/icons/vegetarian.jpg"" alt=""Vegetarian Options Available"" />"
                intIconCount = intIconCount + 1
            End If
        End If
        Return strIcons
    End Function

    Public Function ratingsBuilder(ByVal intRating As Decimal, ByVal intID As Integer)
        Dim myRating As Decimal
        Dim strImage As String
        myRating = Math.Round(Math.Round(intRating * 2), 0) / 2
        strImage = "<img src=""images/ratings/none.jpg"" alt=""This venue has not been rated yet"" />"
        Select Case myRating
            Case 0
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/00.jpg"" alt=""0 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/00.jpg"" alt=""0 out of 5 Rating"" /></a>"
                End If
            Case 0.5
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/05.jpg"" alt=""0.5 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/05.jpg"" alt=""0.5 out of 5 Rating"" /></a>"
                End If
            Case 1
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/10.jpg"" alt=""1 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/10.jpg"" alt=""1 out of 5 Rating"" /></a>"
                End If
            Case 1.5
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/15.jpg"" alt=""1.5 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/15.jpg"" alt=""1.5 out of 5 Rating"" /></a>"
                End If
            Case 2
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/20.jpg"" alt=""2 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/20.jpg"" alt=""2 out of 5 Rating"" /></a>"
                End If
            Case 2.5
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/25.jpg"" alt=""2.5 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/25.jpg"" alt=""2.5 out of 5 Rating"" /></a>"
                End If
            Case 3
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/30.jpg"" alt=""3 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/30.jpg"" alt=""3 out of 5 Rating"" /></a>"
                End If
            Case 3.5
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/35.jpg"" alt=""3.5 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/35.jpg"" alt=""3.5 out of 5 Rating"" /></a>"
                End If
            Case 4
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/40.jpg"" alt=""4 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/40.jpg"" alt=""4 out of 5 Rating"" /></a>"
                End If
            Case 4.5
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/45.jpg"" alt=""4.5 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/45.jpg"" alt=""4.5 out of 5 Rating"" /></a>"
                End If
            Case 5
                If Page.ClientQueryString = "" Then
                    strImage = "<a href=""viewratings.aspx?id=" & intID & """><img class=""picNoBorder"" src=""images/ratings/50.jpg"" alt=""5 out of 5 Rating"" /></a>"
                Else
                    strImage = "<a href=""viewratings.aspx?id=" & intID & "&" & Page.ClientQueryString & """><img class=""picNoBorder"" src=""images/ratings/50.jpg"" alt=""5 out of 5 Rating"" /></a>"
                End If
        End Select
        Return strImage
    End Function

    Public Function mapBuilder(ByVal decLatitude As Decimal, ByVal decLongitude As Decimal)
        Dim strMapCode As String = ""
        strMapCode = "<script type=""text/javascript"">" & vbCrLf
        strMapCode = strMapCode & "//<![CDATA[" & vbCrLf
        strMapCode = strMapCode & "function showmap() {" & vbCrLf
        strMapCode = strMapCode & "if (GBrowserIsCompatible()) {" & vbCrLf
        strMapCode = strMapCode & "var map = new GMap2(document.getElementById(""map""));" & vbCrLf
        strMapCode = strMapCode & "map.addControl(new GSmallMapControl());map.addControl(new GMapTypeControl());" & vbCrLf
        strMapCode = strMapCode & "map.setCenter(new GLatLng(" & decLatitude & ", " & decLongitude & ", 15);" & vbCrLf
        strMapCode = strMapCode & "map.openInfoWindow(map.getCenter(), document.createTextNode(""Venue Name & Address""));" & vbCrLf
        strMapCode = strMapCode & "map.addOverlay(new GMarker(map.getCenter()));" & vbCrLf
        strMapCode = strMapCode & "}" & vbCrLf
        strMapCode = strMapCode & "}" & vbCrLf
        strMapCode = strMapCode & " //]]>" & vbCrLf
        strMapCode = strMapCode & "</script>" & vbCrLf
        Return strMapCode
    End Function

    Protected Sub imgMap_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs)
        Select Case pnlMap.Visible
            Case True
                pnlMap.Visible = False
            Case False
                pnlMap.Visible = True
        End Select
    End Sub

    Protected Sub imgAddFave_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles imgAddFave.Click
        Response.Redirect("addfave.aspx?" & Page.ClientQueryString)
    End Sub

    Protected Sub imgPrint_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles imgPrint.Click
        Response.Redirect("print.aspx?" & Page.ClientQueryString)
    End Sub

    Protected Sub imgEmail_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles imgEmail.Click
        Response.Redirect("emailvenue.aspx?" & Page.ClientQueryString)
    End Sub
End Class

Greg Palmer
Freeware Utilities for Windows Administrators.
 
To create a new control, you just need to declare a New instance of it, set any properties and then add it to another control. e.g.
Code:
Dim d as New DataList
d.ExampleProperty = "Test"
MyPanel.Controls.Add(d)
If you need to do this in a loop, do it whilst iterating through your DataReader.



____________________________________________________________
Mark,
[URL unfurl="true"]http://aspnetlibrary.com[/url]

Need help finding an answer? Try the Search Facility or read FAQ222-2244 on how to get better results.
 
What a waste of an afternoon i've had. I should have just asked here in the first place [bigsmile]

Many thanks ca8msm as always.

Greg Palmer
Freeware Utilities for Windows Administrators.
 
It would be alost of tedious work to dynamically create a complicated control like a datalist or gridview etc. Also, I don't think you will gain anything by doing this. If you just hide/show the datalists as you need, it will be fine because nothing will render if you set the visible property to false
 
Well the problem that I have is at the moment while the site is being designed there are just 13 categories. I expect that to grow to between 50 and 100. I could just manually add datalists each time a new category is added and like I have been doing only setting to visible if there is content in the category.

However I'm the only one with programming knowledge in our small company and i'd like to take a holiday from time to time. Doing it dynamically means that I can put a GUI on the site for others to add the categories and the the site will take care of creating the datalists.

As all the datalists will essentially look the same I'm hoping it will be an easy process. If not then I'm happy with the status quo, at the end of the day it is working perfectly as it is and that is the most important thing [bigsmile]

Greg Palmer
Freeware Utilities for Windows Administrators.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top