在C#WebBrowser中加载本地HTML文件
在我的应用程序中,我有一个WebBrowser元素。
我想在其中加载本地文件。
我有一些疑问:
- HTML文件的放置位置(以便在用户执行安装程序时也将安装该文件)
- 如何引用文件?(例如,我的猜测是用户的安装文件夹并不总是相同的)
我已将HTML文件添加到我的项目中。
我已经对其进行设置,以便将其复制到输出文件夹。
当我检查它时,它在运行时存在:\ bin \ Debug \ Documentation \ index.html
但是,当我执行以下操作时,在webbrowser元素中出现“无法显示页面”错误。
我使用以下代码尝试在Webbrowser中显示HTML文件。
webBrowser1.Navigate(@".\Documentation\index.html");
回答:
- 做一个 在Visual Studio中的文件。
- 将“ 为 。
然后,您将可以使用以下路径来引用文件: @".\my_html.html"
构建项目时,复制到输出目录会将文件与二进制dll放在同一文件夹中。这适用于任何内容文件,即使它位于子文件夹中。
如果您使用子文件夹,该文件夹也将被复制到bin文件夹中,因此您的路径将是 @".\my_subfolder\my_html.html"
为了创建可以在本地使用的URI(而不是通过Web服务器),您需要使用 协议,并使用二进制 的基本目录-
注意:仅当您将Copy设置为Ouptut时,此协议才有效上面的目录或路径将不正确。
这是您需要的:
string curDir = Directory.GetCurrentDirectory();this.webBrowser1.Url = new Uri(String.Format("file:///{0}/my_html.html", curDir));
当然,您必须更改变量和名称。
以上是 在C#WebBrowser中加载本地HTML文件 的全部内容, 来源链接: utcz.com/qa/422753.html