2012-08-27 80 views
2

我使用Windows Forms WebBrowser控件通過設置DocumentText來顯示生成的報告。有沒有辦法阻止用戶在右鍵菜單中選擇「刷新」,或者攔截刷新,以便重新生成報告?目前刷新方法重新加載「about:blank」,丟棄我的報告。如何攔截Windows窗體WebBrowser控件中的刷新?

 Browser.AllowNavigation = true; 
     Browser.DocumentText = "<head></head><body><h1>Test</h1></body>"; 

到目前爲止似乎刷新不會引起Navigating事件,我沒有得到一個DocumentCompleted事件,即使控制不替換HTML內容。我試過AllowNavigation的兩個設置,沒有明顯區別。什麼西蒙Mourier說

private void KeyPressed(object sender, KeyPressEventArgs e) 
{ 
     if(e == Keys.F5) 
       //do sth; 
} 

在結合:

+2

您可以禁用上下文菜單(http://msdn.microsoft.com/library/system.windows.forms.webbrowser.iswebbrowsercontextmenuenabled(v=vs.80).aspx),但用戶仍然可以按F5 –

回答

-1

您可以使用OnKeyPress事件做you could disable the context menu

+1

This似乎並沒有爲我工作。首先'e == Keys.F5'不能編譯,因爲功能鍵需要在'KeyDown'處理程序中匹配。我嘗試綁定到瀏覽器上的'KeyDown'事件,但我的處理程序永遠不會被調用。 –

+0

這不是一個很好的工具,因爲你可以用鼠標右鍵點擊,在上下文菜單中,你可以點擊刷新按鈕! – Daniel

相關問題