Sunday, April 13, 2008

Dissecting Hard Rock Memorabilia...- Part 9 - Source code

Due to the large number of requests for the source code and my inability to respond to every request, I decided to post the link to the source code here.

I would appreciate a quick comment to this post if you do decide to download the source code. This way I get an idea of how much interest there is for the code.

Disclaimer: I used the project created by Scott Hanselman, and parts of the code was borrowed from the Expression Team and Soul Solutions blog. I used Notepad++ as my editor since I do not have access to Visual Studio. As a result of this and the fact that I have very limited time to dedicate to this activity, the code is as dirty as it gets!


Anonymous said...

Thansks Wilfred for posting the code.

I downloaded it and tried to run the html pages and all I seem to get is the buttons on the bottom of the page. There are no images showing up. When I click on a button, they go away too, leaving me with an empty page.

I can load the project in Blend, and rebuild it, but the same result. An ideas? Is this an issue with the image path?

I can't wait to get this working!

- Gavin

Wilfred Pinto said...


The local path is hardcoded. Please change the following URI to point to the images on your machine.

msi.Source = new Uri("file:///C:/downloads/silverlight/DeepZoomOutput/DeepZoomOutput_Web/ClientBin/test/items.bin");

Let me know if you still have issues.



Anonymous said...

Changing the path worked. Thanks!

Filtering seems to be broken - the button is disabled.

- Gavin

Wilfred Pinto said...


If you see the code just below msi.Source = new Uri("file:...), you will notice a comment 'Comment the below code if xap is deployed locally'. This is the code that enables filtering.

I am using the asyc download capability of Silverlight to download the metadata file. The code will only work if the metadata file is deployed remotely, in which case you should uncomment the 3 lines of code, change the URI, and it should work. If you want to serve the metadata file locally you will have to change the code to read from a local file and then enable the button - buttonFilter.IsEnabled = true;



Lucas said...

Just letting you know I'm downloading the code. Thanks!

Anonymous said...

Thanks for the code example!

Jason said...

Loving it. Thanks for the code. It saved me from days of harassment! :).

Jason Kergosien

T4nDy said...

Wooo I love the code, it works flawlessly and have been quite psyched to try out new stuffs.

Btw, question here ... can we actually slow down or speed up the "Zoom" animation when UseSprings is set to true? anyway we can control the animation speed ?

Thanks heaps :p

Wilfred Pinto said...

As of Beta 1 there was no way to control the animation speed, but I don't know if Beta 2 gives us more control.

I haven't had much chance to work on this stuff for some time now since I am buried in a new project. Yes, it's on Silverlight!


Nucleotic said...

Just a nod that I'm downloading the code. Thanks for the brilliant post series and dissection.

ZNS said...

Downloaded your code, nice work. I've just started experimenting with deep zoom for a view in my project M.O.M.

Wes said...

Appreciate the code, I am having trouble getting multiscale images to populate since they switched to .xml output. I've Been looking for the most basic example of adding an MSI to a silverlight project but I couldn't find anything for silverlight beta 2. I am going to try and see how you added yours as it looks like you used the the .XML output. Thanks again.

mike k said...

Very cool stuff. I am wondering if you could help think of why the CPU usage does not go back to zero when there is no interaction with the plugin? Keep up the good work.

MKing said...

I downloaded your source code, but when I try to extract the contents of the ZIP file I get the following error:

"File '0_0.jpg' is password protected. Please enter the password in the box below."

Are some of the files in your archive password protected?

Wilfred Pinto said...


It looks fine to me. I downloaded the source code and extracted it without any issues. Are you sure it downloaded properly?

You might want to try downloading the latest code from the newer posts and see if it works for you.



Chris said...

I grabbed the source. Thanks for the examples.

I'm looking for a way to change the sizes of the images relative to each other, on the fly. So, for example, I could start with images of different heights, and align the heights nicely the way you have in your examples?

Have you seen anyone try this?


Crb71 said...

I'm just starting out with Silverlight,building my photography website which will be similar to Hardrock. Thanks for your tutorials and code. Very useful.

Deepa said...

Thanks for your series of posts on DZ. I just downloaded the source code and will try it out on Silverlight 3.

Timothé said...

Thank you for the code. Even after being working during 4 months on DeepZoom, I fell really bad to see how complex reamin your code for me.
It's really nice what you were doing.