I've posted an update the ASP.NET wwHoverPanel control. There's been a lot of feedback and so in the interim I fixed a number of issues related to the popup rendering.  You can find the latest version here:

 

www.west-wind.com/tools/wwhoverpanel

 

This update also adds support for rendering popups in IFRAMEs as opposed to inline panels only.  A number of people ran into issues trying to load fully self-contained pages into the hover panels, which didn't work. If you previously loaded a full HTML page it would break since the loaded page would include an HTML header which is not legal to be embedded into an existing document (although oddly enough in some instances this actually works).  The other related issue that if a page has its own FORM tag or worse its own ASP.NET server form it wasn't going to run in an embedded panel.

 

To address this I've added support for a couple of new eventhandler modes that work just like the panel versions but use embedded IFRAMEs instead. The advantage of IFRAMEs is that they are actually self contained pages so you CAN load a full HTML page and you CAN have a page that runs a full ASP.NET server FORM and rich processing. This actually works really well for pop up selection lists and things like pop up calculators that might need to post back to the server to get more data.


I've created a new sample that demonstrates the IFRAME functionality here:

 

http://www.west-wind.com/presentations/wwhoverpanel/sample/IFrame.aspx

 

It's an RSS viewer that shows a feed and lets you pop up individual messages as popovers. Not the best example visually because most blogs need a lot of screen real estate to render well, but you'll get the idea. It also uses an IFRAME window to present a list of recently viewed blog feeds that users typed in. You can select from a list of previous blogs which is popped up – you guessed it as an IFRAME. Although this sample would have actually been easier with an inline panel, this sample demonstrates how you can make a selection in the IFRAME and pass the result value back to the main form and close the pop up window. It's actually pretty easy to do this, but it's not real obvious if you've never done this. I think this sort of thing is super, super useful in many situations. For example it's great for pop up calendars, more flexible list displays (like if you need to display multiple columns) – anything where you need to pop up a display and allow interaction with the user.

 

Incidentally using IFRAMES kind of isn't doing standard AJAX – it bypasses the whole process of callbacks and using XmlHttp and simply navigates the IFRAME so in a sense it's a lot easier to do the IFRAME navigation bit.

 

There have also been a number of tweaks and adjustments in the way the shadow is rendered and how opacity works which should now be a lot more reliable than in the previous rev.

 

I've been surprised how much interest there's been in this control – lots of comments and discussion and lots of heads up remarks. As many of you told me, I think this sort of hover behavior is one of the most useful AJAX scenarios and I'm glad to see that ATLAS is now including some basic popup panel support. It doesn't quite do all the things I do on the hoverpanel but I bet you'll be able to add behaviors at some point to do this. Cool.  In the meantime while waiting for ATLAS to fully bake this stuff works…

 

Have at it… If you have questions or comments post them here or on our Message Board.