As Richard said, you can create or get a document viewer for each document type. If there are only a few document formats you have, this may be a suitable solution. However, as you cater for more formats, this does have a tendency to become bulky.
Also, there are a number of commercial packages around that enable viewing of a large number of native formats - one of these may suit your purposes, if you are prepared to pay for it.
Alternatively, you could use the document's native application to "print" a rendition of the document to an XPS file, then use the
DocumentViewer class[
^] to view the new rendition. We did similar to that in our ECM system, although were a bit more old-school, and used PDF as the rendition. XPS these days is a simpler prospect, but still a bit of work involved.