Not an expert, but here are a few suggestions:
Take a look at the atlas control toolkit,
For the pop up, there's a pop up extender. To fill the GridView async, you can use a web service. Actually, you don't have to. Just putting the GridView in an UpdatePanel with a PartialRendering ScriptManager will let you re-fill it with any query you'd like.
And by the way, there's also a ModalPopUp extender, might fit your needs better.