It looks like you are going to want something like the FileSystemWatcher.Changed Event. You can hook up to the event when the application loads, and know when the file changes. This will allow you to catch changes made both internally (by your program) and externally (by a text editor or something like that).
When a file change is detected, simply load the new file and refresh the views with the new data. This part can be a little complicated depending on how the data is loaded into the views. This could also require detection of changes in the views when external changes have also been made. Probably best to prompt the user before reloading. This all depends on your use case and the expected use by the user.
Sauce: http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.changed.aspx