I've taken a similar approach in the past to what Rick suggested but instead of using an editbox control I used the Web Browser control (Shell.Explorer.2 control).
The benefit is that you can load different file types without having to make any changes to the form (Word, Excel, Visio, Text, Html, Bitmap, etc)
The downside is that you have add more code to control events and errors and loading some file types will take longer as the control is also loading the automation server. Some file types will also launch the associated program outside of you app as well, but that can be controlled by limited file selection.
Have to say that an editbox is a simpler solution and many times simpler is better but take a few minutes to play with the browser control and see if you like it.
Ralph Kolva