Webbrowse如何禁用Backspace(返回)
1. Webbrowse屬性WebBrowserShortcutsEnable:指定在WebBrowser控制項中是否啟用某些快速鍵,但Backspace不在控制範圍,該屬性無法實現禁用Backspace(返回)
2. Webbrowse事件PreviewKeyDown:不支援e.handled=true的屬性,依然無法實現禁用Backspace
3. 使用HTMLDocument 的onkeydown 事件:
代碼
private void axWebBrowser1_DocumentComplete(object sender, AxSHDocVw.DWebBrowserEvents2_DocumentCompleteEvent e)
{
mshtml.HTMLDocument doc1 = (mshtml.HTMLDocument)axWebBrowser1.Document .DomDocument;
mshtml.HTMLDocumentEvents2_Event eve = (mshtml.HTMLDocumentEvents2_Event)doc1;
eve.onkeydown += new mshtml.HTMLDocumentEvents2_onkeydownEventHandler(eve_onkeydown);
}
void eve_onkeydown(mshtml.IHTMLEventObj pEvtObj)
{
if (pEvtObj.keyCode == 8) //backspace
{
pEvtObj.cancelBubble = true;
}
}
ps:需要using mshtml; 右鍵方案總管-》添加引用-》.NET-》Microsoft.mshtml
ref:
http://vbcity.com/forums/t/147562.aspx
http://www.cnblogs.com/taobataoma/archive/2007/04/30/733242.html