Link to home
Start Free TrialLog in
Avatar of TeamEnova
TeamEnova

asked on

Images wont change with ajax toolkit slideshow extender

I recently went through the online videa at MS to create a slide show page using the slideshow extender.  The page loads, and at first, appears to work normally, but the images dont change.

My code for the page and the SlideService is below.  Any help would be greatly appreciated.
******************slideshow.aspx*******************
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="slideshow.aspx.vb" Inherits="slideshow" %>
 
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <cc1:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"  >
    </cc1:ToolkitScriptManager>
    <div style="text-align:center">
        <asp:Image ID="Image1" runat="server" 
                   Height="600px" 
                   style="border:1px solid black; 
                   width:auto" 
                   ImageUrl="~/pics/DSC_1782.JPG" 
                   AlternateText="First Lacrosse Pic" />
<br />
        <asp:Label ID="lblImage1" runat="server"></asp:Label>
<br />
        <asp:Button ID="btnPrev" runat="server" Text="Prev" />
        <asp:Button ID="btnPlay" runat="server" Text="Play" />
        <asp:Button ID="btnNext" runat="server" Text="Next" />
        <cc1:SlideShowExtender ID="SlideShowExtender1" runat="server" 
                               TargetControlID="Image1" 
                               SlideShowServicePath="SlideService.asmx" 
                               SlideShowServiceMethod="GetSlides" 
                               AutoPlay="true" 
                               ImageDescriptionLabelID="lblImage1" 
                               NextButtonID="btnNext" 
                               PlayButtonID="btnPlay" 
                               PlayButtonText="Play" 
                               StopButtonText="Stop"
                               PreviousButtonID="btnPrev" />
    </div>
    </form>
</body>
</html>
 
 
********************SlideService.vb****************************
Imports System.Web
Imports System.Web.Services
Imports System.Web.Services.Protocols
 
' To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
<System.Web.Script.Services.ScriptService()> _
<WebService(Namespace:="http://tempuri.org/")> _
<WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Public Class SlideService
    Inherits System.Web.Services.WebService
 
    <WebMethod()> _
    Public Function GetSlides() As AjaxControlToolkit.Slide()
        Dim mySlides(5) As AjaxControlToolkit.Slide
        mySlides(0) = New AjaxControlToolkit.Slide("~/pics/DSC_1782.jpg", "pic1", "First Lacrosse Picture")
        mySlides(1) = New AjaxControlToolkit.Slide("~/pics/DSC_1783.jpg", "pic2", "Second Lacrosse Picture")
        mySlides(2) = New AjaxControlToolkit.Slide("~/pics/DSC_1784.jpg", "pic3", "Third Lacrosse Picture")
        mySlides(3) = New AjaxControlToolkit.Slide("~/pics/DSC_1785.jpg", "pic4", "Fourth Lacrosse Picture")
        mySlides(4) = New AjaxControlToolkit.Slide("~/pics/DSC_1786.jpg", "pic5", "Fifth Lacrosse Picture")
 
        Return mySlides
    End Function
 
End Class

Open in new window

Avatar of carlnorrbom
carlnorrbom
Flag of Sweden image

Hi,

The only obvious thing I can spot is that You're returning an Array with an upper bound of six (index based = 5) but only specifying the first five array fields (0->4). Maybe that breaks the extender? Try specifying at is MySlides(4) and see if it makes a difference.

/Carl.
Avatar of TeamEnova
TeamEnova

ASKER

Here is something new.
If I put a break in the SlideService.vb file, at the Public Function GetSlides() line, it will go to that function, get into the function, but at the second line which is

mySlides(0) = New AjaxControlToolkit.Slide("~/pics/DSC_1782.jpg", "pic1", "First Lacrosse Picture")


It pops a box that says "Thre is no source code available for the current location."  What is that?
Hi again,

Maybe You should not supply the dynamic path, try removing "~/" from the path. Sorry for being inaccurate but I'm actually on holiday over the easter and doesn't have access to my dev box. Also, since the error message reg. the source code most likely is related to the control toolkit, have You tried adding a reference to the Ajax ControlToolkit dll to the project containing the service (if not the same project as for the slideshow)?

/Carl.
carinorrbom,
I have tried your suggestion, but still no luck.  It is like the extender just doesnt work at all.  The first image, as supplied in the aspx file, does show up, but none of the buttons work, except that when I  hit the stop/play button, the text changes.  Thats it.

Very confusing.
ASKER CERTIFIED SOLUTION
Avatar of carlnorrbom
carlnorrbom
Flag of Sweden image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Great work.  Thanks for sticking with it, even through vacation!  I am a bit embarassed that I did not pick up those errors, but anyway, Thanks!