我正在处理Winforms项目,并希望显示HTML文件中的关于页面内容。 我为此使用了WebBrowser控件,但即使它可以工作,但在打开解决方案或构建项目时仍会收到以下错误消息:
有什么办法可以修复或忽略它?
这是“关于”页面类中的方法调用:
private void displayAboutContent()
{
this.labelVersion.Text = string.Format(@"Version: {0}",BoostEngine.r_CurrentVersion);
UITools.displayHTMLPage(m_WebBrowser, m_ResourceName);
}
和UI Tools静态类:
public static class UITools
{
public static void displayHTMLPage(WebBrowser i_WebBrowser, string i_ResourceName)
{
Uri uri = new Uri(getFilepath(i_ResourceName));
i_WebBrowser.ScriptErrorsSuppressed = true;
i_WebBrowser.Navigate(uri);
}
private static string getFilepath(string i_ResourceName)
{
string projectPath = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName;
string filePath = Path.Combine(projectPath, string.Format("Resources\\{0}.html", i_ResourceName));
return filePath;
}
}
P.S。 我在其他表单上使用此代码,但仅在“关于”页面上收到错误。 同样要注意的是,我在Mac上使用的是Parallels VM。
谢谢!
答案 0 :(得分:0)
我不知道在解决方案加载或编译期间正在运行什么代码,您可能会在项目文件中查找已添加的任何目标。
但是,要解决该问题,您可以选择不Navigate
(如果文件不存在):
if(System.IO.File.Exists("c:\\whatever"))
{
i_WebBrowser.Navigate(uri);
}
如果这样做,您可能会考虑加载一个保证存在的页面,或者使用load a string of html使该页面对用户友好,并显示一条适当的消息。