I understand that this is an old thread and probably the original poster no longer needs the solution. However, I post my solution here in case if someone else has the same problem.
When you add your html files and images into the Visual Studio, open their properties, be sure to select your build action to "None" and select always copy to output folder or copy if newer.
Then in your code, to make your browser navigate to the html file,
//replace yourfile and yourfolder with your file and folder's names
Uri uri = new Uri("pack://siteoforigin:,,,/yourfile.html"); //or pack://siteoforigin:,,,/yourfolder/yourfile.html
webBrowser.Navigate(uri);
In this case, you are putting your html files and stuffs outside your assembly. The good thing about this design is that you do not need to rebuild your assembly every time you change your html file, and any images or css files used by your html files will still be rendered correctly.