c#webbrowser编码,用于本地导航到html

本文关键字:导航 html 编码 用于 c#webbrowser | 更新日期: 2023-09-27 18:19:55

我试图在C#应用程序中的web浏览器中放置一个本地html位置地址,但总是失败。我现在使用调试模式,所以html文件已经复制到我的调试文件夹中,因为我总是把副本放在复制到输出选项中。以下是我的代码:

        string appPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase);
        string filePath = Path.Combine(appPath, "index.html");
        webBrowser1.Navigate(new System.Uri(@"file://"+ filePath));

使用这种方式总会出现这样的错误:

An unhandled exception of type 'System.UriFormatException' occurred in System.dll

知道出了什么问题吗?

c#webbrowser编码,用于本地导航到html

这有点不清楚,但请尝试一下。希望这能有所帮助。

webBrowser1.Navigate(new Uri(@"your File Name"))

webBrowser1.Navigate(new Uri(AppDomain.CurrentDomain.BaseDirectory == "''File Name")

编辑:,这可能会导致错误

webBrowser1.Navigate(new System.Uri("@" filePath + "file://"));

您只需要稍微更改代码-以下是正确的语法:

string appPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase);
string filePath = Path.Combine(appPath, "index.html");
webBrowser1.Navigate(new System.Uri(filePath));

问题是CodeBase已经以URI格式返回了路径,因此您不需要在路径中添加额外的"file://"。