[英]How do I get current status code in a WebBrowser control?
我需要從WebBrowser中加載的頁面獲取http狀態代碼,我最終得到了這個解決方案:
我正在使用WebBrowser
ActiveXInstance
實例中的NavigateError
事件。 但是它沒有正常工作:如果頁面無法加載,並且用戶wb.Refresh()
它和加載正常,我只得到一個錯誤的情況下的狀態代碼(顯而易見,如方法名稱確實建議)我只保存舊的http狀態錯誤代碼,因為成功加載不會更改我的http狀態代碼。 我該如何解決這個問題?
public doSomething()
{
SHDocVw.WebBrowser axBrowser = (SHDocVw.WebBrowser)webBrowser1.ActiveXInstance;
axBrowser.NavigateError += new SHDocVw.DWebBrowserEvents2_NavigateErrorEventHandler(axbrowser_navigatorError);
}
public void axbrowser_navigatorError(object pDIsp, ref object URL, ref object frame, ref object statusCode, ref bool Cancel)
{
statuscodeLabel.Text = statusCode.ToString();
int.TryParse(statusCode.ToString(), out httpCode);
}
WebBrowser
的Refresh
與Navigate
/ Navigate2
完全不同。 沒有為Refresh觸發NavigateComplete2
。 我不認為你可以獲得刷新的狀態代碼,除非你求助於一些低級APP處理程序掛鈎。 相關: Wpf WebBrowser刷新 。
您可以從LoadComplete()上的NavigationEventArgs獲取WebResponse ,這也應該在刷新頁面時觸發。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.