Hi Jason,
Thanks for posting your question here. Unfortunately it's impossible to "ajax" file upload along with other page contents at the same time. A regular AJAX solution does a http form post and it can only deal with regular form data item, not file upload. Having enctype="multipart/form-data" is a must for uploading files, but still the CallbackPanel has to actually encode and upload the file contents, which obviously is beyond the ability of javascript code because of security concerns.
We have a separate component, AJAXUploader that deals with file uploading. The uploader would give you live progress information as it upload the files, and once it's done uploading, you can then submit the uploaded file list to the server and then your server code can decide how to deal with the uploaded files. The component is quite useful, especially for uploading large files. However it does not overcome the impossible of "AJAX posting the file and form content at the same time", the actual uploading is a two step process. AJAXUploader however can automatically triggers posting back (the second step) after it's done file uploading (the first step).
Our online sample demonstrates how to use AJAXUploader and CallbackPanel together:
http://www.essentialobjects.com/Demo/Default.aspx?path=AJAXUploaderYou can pick any of the demo from the TreeView. The right side is always updated by a CallbackPanel, and some of the demos also use additional CallbackPanels inside the demo region.
Hope this helps. Please feel free to let us know if you have any more questions.
Thanks