如何将 HTML 文件从另一个程序集加载到 WPF WebBrowser 控件
How to load HTML file from another assembly to WPF WebBrowser Control
这些是我的解决方案中的项目:
- HTMLApp (TypeScript) - 包含 index.html
- WebBrowserApp (WPF) - 包含 main.xaml 和 WebBrowser 控件
我想将 index.html 的内容加载到 main.xaml 内的网络浏览器控件中。 index.html 的生成操作设置为资源。
我在 XAML 中尝试了这段代码,但没有成功:
myBrowser.Navigate(new Uri("pack://siteoforigin:,,,/HtmlApp/index.html"));
WebBrowser
控件不适用于 pack URIs。
您传递给 Navigate
方法的 Uri
的 Source
应该是 URL 或绝对文件路径。 WebBrowser
控件不支持浏览资源或相对路径。
您可以将 index.html
的 Build Action
更改为 Content
,将 Copy to Output Directory
属性 设置为 Copy if newer
,然后导航到像这样的本地文件:
myBrowser.Source = new Uri(string.Format("file:///{0}/index.html", Directory.GetCurrentDirectory()));
这些是我的解决方案中的项目:
- HTMLApp (TypeScript) - 包含 index.html
- WebBrowserApp (WPF) - 包含 main.xaml 和 WebBrowser 控件
我想将 index.html 的内容加载到 main.xaml 内的网络浏览器控件中。 index.html 的生成操作设置为资源。
我在 XAML 中尝试了这段代码,但没有成功:
myBrowser.Navigate(new Uri("pack://siteoforigin:,,,/HtmlApp/index.html"));
WebBrowser
控件不适用于 pack URIs。
您传递给 Navigate
方法的 Uri
的 Source
应该是 URL 或绝对文件路径。 WebBrowser
控件不支持浏览资源或相对路径。
您可以将 index.html
的 Build Action
更改为 Content
,将 Copy to Output Directory
属性 设置为 Copy if newer
,然后导航到像这样的本地文件:
myBrowser.Source = new Uri(string.Format("file:///{0}/index.html", Directory.GetCurrentDirectory()));