Thanks DisturbedBuddha, the MyTemplate class is what helped me in my case.
Few notes if someone else sees this post:
1) This seems to work fine in Page_Load also (.NET 3.5)
2) If you are having any problems with the updateProgress panel working, make sure you set its 'displayAfter' property to 0 so that at least you will see it if it is working! Also, add a sleep in the page_load - system.threading.thread.sleep(200). This 2 seconds will give the panel enough time to appear properly.
Obviously take out the sleep once you've got it working!
Thanks.