Wpf 导航到程序集中的.html文件

Wpf 导航到程序集中的.html文件,wpf,browser,Wpf,Browser,我正在使用WPF WebBrowser控件导航到承载Silverlight的html页面。似乎我不能使用NavigateToString或NavigateToStream方法,因为我有Silverlight内容。html内容可以加载,但不能加载Silverlight。所以我想我必须使用Navigate方法,它接受一个Uri。现在,我想导航到的html页面位于VisualStudio项目中的.html文件中,因此我必须具有某种本地uri。我不想将html文件复制到输出文件夹,因为我不想单独分发它;

我正在使用WPF WebBrowser控件导航到承载Silverlight的html页面。似乎我不能使用NavigateToString或NavigateToStream方法,因为我有Silverlight内容。html内容可以加载,但不能加载Silverlight。所以我想我必须使用Navigate方法,它接受一个Uri。现在,我想导航到的html页面位于VisualStudio项目中的.html文件中,因此我必须具有某种本地uri。我不想将html文件复制到输出文件夹,因为我不想单独分发它;我希望它以某种方式被纳入大会。问题是WebBrowser控件似乎不允许相对URI或pack://application: URI


如何在程序集中完成对.html文件的导航?

您应该能够使用NavigateToString并使用GetManifestResourceStream自己将html文件拉出:

using (var _textStreamReader = new StreamReader(Assembly.GetExecutingAssembly().GetManifestResourceStream("BrowserTest.test.htm")))
{
    string content = _textStreamReader.ReadToEnd();
    MainBrowser.NavigateToString(content);
}
但是,如果需要在HTML文件中使用外部资源,则会出现问题。如果需要外部资源,则必须将Win32资源(与.net资源不同)嵌入程序集中,这有点麻烦。在上的WinForms应用程序中有一个这样做的示例