我编写了一个应用程序,该应用程序通过webbrowser表单加载页面。通过webbrowser_DocumentCompleted函数中的webbrowser.navigate完成加载页面。这工作得很好。但是,如果应用程序没有网络,则显示“此页面无法显示” - 页面。是否可以显示自定义页面,如果是 - 如何?感谢您的帮助。将“无法显示此页面”更改为自定义页面
回答
您可以在应用程序的开始时执行网络检查,如果失败,您可以将其重定向到错误页面?
反过来在你的app.config你可以使用下面的代码:
<system.web>
<customErrors>
<error statusCode="404" redirect="error.htm"/>
</customErrors>
,只要您的应用程序接收HTTP错误代码404,将重定向到error.htm页
该页面是由您的浏览器给出的,并且不是的应用程序,所以不,您无法更改它。
然而,你可以做的是读取网页浏览器返回的HTML,检查它没有这样说,并采取相应的行动。
例子:
//document completed function declaration
{
if (yourWebBrowser.Document.InnerHtml.Contains("This page cannot be displayed")
{
//Do Something
}
}
呦可以创建自定义错误页,并显示它从你的web.config
多个错误状态。
定义错误页:
当未处理的异常在ASP.NET应用程序会显示三种类型的错误页面的一个出现了:
- 异常的详细信息黄色死亡的错误页面的屏幕,
的运行时错误死亡的错误页面的黄屏,或
自定义错误p年龄
默认情况下,所有类型的错误都会导致显示相同的自定义错误页面。但是,您可以使用<customErrors>
部分中的<error>
子元素为特定的HTTP status code
指定不同的自定义错误页面。例如,在未找到页面错误,其中有404
的HTTP
状态代码的情况下显示不同的错误页面,更新<customErrors>
部分包括以下标记:
<customErrors mode="RemoteOnly" defaultRedirect="~/ErrorPages/Oops.aspx">
<error statusCode="404" redirect="~/ErrorPages/404.aspx" />
</customErrors>
一种方式做它是处理您的WebBrowser的Navigated方法,然后尝试访问WebBrowser对象的Document对象的Domain属性。如果它无法访问域(如服务器关闭或不存在),则会引发错误。然后,您只需要捕获错误并将您自己的HTML直接写入WebBrowser的Document对象,如下所示:
Private Sub WebBrowser1_Navigated(sender As Object, e As System.Windows.Forms.WebBrowserNavigatedEventArgs) Handles WebBrowser1.Navigated
Dim doc As HtmlDocument = WebBrowser1.Document
Try
Dim s As String = doc.Domain
Catch ex As Exception
WebBrowser1.Document.Write("<html><body><br/><h1>The site you are trying to reach is offline or hasn't been set up yet. Please contact your system administrator.</h1></body></html>")
End Try
End Sub
欢迎来到SO,在回答时,尽量避免发布一段代码。相反,花几分钟时间来解释代码以及它的工作原理。请参阅[社区准则](https://stackoverflow.com/help/how-to-answer)以获得很好的答案。 – LightBender
- 1. 将404重定向页面从默认页面更改为自定义页面。
- 2. 如何将主页更改为Orchard中的自定义页面
- 3. 将主页更改为DotNetNuke中的自定义页面
- 4. 此页面无法在IIS中显示
- 5. Asciidoctor此页面无法显示错误
- 6. xampp - 此页面无法显示
- 7. 无法为B2C登录页面添加自定义页面
- 8. 此页面显示?
- 9. 无法在春季自定义登录页面上显示页面
- 10. 如何将数据库错误页面更改为自定义错误页面?
- 11. 主塔 - 将常规404 Not Found页面更改为自定义页面
- 12. 更改页面显示
- 13. 更改自定义404错误页面
- 14. 显示自定义页面内容
- 15. 自定义错误页面不显示
- 16. 自定义ActiveAdmin中的显示页面
- 17. 显示自定义元框在页面
- 18. 如何显示自定义页面
- 19. CMS和显示自定义404页面
- 20. 自定义404页面不显示
- 21. WordPress自定义类别页面显示空白页面
- 22. 自定义记录详细信息页面(显示页面?)
- 23. 无法在OWIN上显示Nancy的自定义错误页面
- 24. 我无法更改页面
- 25. 自定义分页算法来计算页面显示
- 26. 页面无法在自动刷新的页面上显示
- 27. 显示自定义帖子类型存档页面为主页
- 28. 页面无法显示
- 29. 在Drupal 7中将自定义模块显示为XML页面
- 30. 使用JavaScript我将如何更改此显示页面加载?
示例中提供的代码不起作用。 – tedder84
InnerHtml未知。 – tedder84
@ tedder84这就是我所说的“示例”,它没有经过测试 –