例如,我们导航到http://www.ggg111.com,这是一个错误 URL。但在 WebBrowser 中,它显示了一个错误页面:
找不到网页
HTTP 400
最可能的原因:
地址中可能存在输入错误。
如果您点击了一个链接,它可能已经过时。
你可以尝试什么:
重新输入地址。
返回到前一页。
转到并查找您想要的信息。
如何知道 WebBrowser 是否导航错误页面?
还检查这个:https : //sso.youshang.com/sso/userAuthnAction.do1
HTTP 状态 404 - /sso/userAuthnAction.do1 类型状态报告 消息/sso/userAuthnAction.do1 描述 请求的资源 (/sso/userAuthnAction.do1) 不可用。
基于此控件:http://www.codeproject.com/KB/cpp/ExtendedWebBrowser.aspx
有 NavigateError 函数,在导航过程中发生错误时触发。这是我修改后的代码:
首先添加事件参数类:
public class NavigateErrorArgs : EventArgs
{
public object StatusCode { get; set; }
public NavigateErrorArgs()
: base()
{ }
public NavigateErrorArgs(object statusCode)
: base()
{
this.StatusCode = statusCode;
}
}
Run Code Online (Sandbox Code Playgroud)
然后在类 ExtendedWebBrowser 中添加委托和事件:
public delegate void NavigateErrorHandler(object sender, NavigateErrorArgs e);
public event NavigateErrorHandler NavigateError;
protected void OnNavigateError(NavigateErrorArgs e)
{
if (NavigateError != null)
NavigateError(this, e);
}
并修改类WebBrowserExtendedEvents中的方法:
public void NavigateError(object pDisp, ref object URL, ref object frame, ref object statusCode, ref bool cancel)
{
_Browser.OnNavigateError(new NavigateErrorArgs(statusCode));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10332 次 |
| 最近记录: |