2010-10-25 19 views
9

mögliche Dubletten:
Disable browser's back button
How do I disable the F5 refresh on the browser?Disable F5 in WebBrowser

Hallo,

ich eine Anwendung in C# erstellt, die Daten aus dem Internet herunterladen (und diese wird nur einmal durchgeführt) und in einen Webbrowser gestellt. Diese Daten sollten statisch sein. Ich möchte wissen, ob es eine Möglichkeit gibt, den F5-Schlüssel von einer Aktualisierung zu deaktivieren?

Ich habe versucht, Javascript zu injizieren, um F5 zu deaktivieren, aber es wird immer noch den Webbrowser aktualisieren.

+1

auch dort sind viele ähnliche Fragen: http://stackoverflow.com/search?q=disable+refresh+browser – mauris

+5

Ich kann nicht eine Stimme zu öffnen, aber ich würde, wenn ich könnte. Diese Frage fragt nach dem Deaktivieren von F5 in einem 'WebBrowser'-Steuerelement, welches die 'möglichen Duplikate' ** nicht ** adressieren. – josh3736

+2

Ich weiß nicht wirklich, warum das ein doppelter Eintrag ist. Dies verwendet WebBrowser-Steuerelement in einem Windows Form. – jantox

Antwort

18

Sie können F5 (oder andere Tastenkombinationen für Browser) nicht über JavaScript deaktivieren.

Die WebBrowserShortcutsEnabled Eigenschaft der WebBrowser Steuerung auf false sollte erreichen, was Sie versuchen zu tun.

+0

Das funktioniert! Vielen Dank! – jantox

+0

Ich habe ein Problem. Es deaktiviert Tastaturkürzel, deaktiviert aber auch Links, die IE öffnen. – jantox

+2

Behandeln Sie das 'WebBrowser.Navigating'-Ereignis:' private void WebBrowserNavigating (Objektabsender, WebBrowserNavigatingEventArgs e) {if (e.Url.ToString()! = "About: blank") {System.Diagnostics.Process.Start (e. Url.ToString()); e.Cancel = wahr; }} ' – josh3736

-1

Aufruf dieser Funktion auf dem onKeyDown Ereignis

document.onkeydown = function(e) { 
     // keycode for F5 function 
     if (e.keyCode === 116) { 
     return false; 
     } 
     // keycode for backspace 
     if (e.keyCode === 8) { 
     // try to cancel the backspace 
     return false; 
     } 
    }; 

Dieses von F5 reload und Backspace zurück zu verhindern.

+0

Dies funktioniert nicht. – josh3736

+0

sollte es jetzt funktionieren ... – Azhar

+0

das funktioniert nicht. Ich habe dies versucht, indem ich in den Webbrowser injiziert habe. Auf normalem HTML wird das funktionieren. – jantox