■72948 / ) |
Re[8]: エンターを押せないようにする |
□投稿者/ 魔界の仮面弁士 (71回)-(2014/08/02(Sat) 15:54:35)
|
■No72947 (魔界の仮面弁士) に追記 > 「特定のページ」とありますが No72937 のコードの場合、一度『検索』して次ページに遷移した後、 > そこから右クリック→[前に戻る] などで戻ってきた場合、自作したイベントが処理されませんが、それで良いのでしょうか?
すべての <input type="text"> に対して、 Enter をキャンセルさせるようにしてみました。
Enter による送信を望まないのであれば、テキストボックス内で Enter が必要になることも 無いので、ページの内容に関わらず、全キャンセルで構わないかと。
private void button1_Click(object sender, EventArgs e) { webBrowser1.Navigate("http://www.yahoo.co.jp/");
// webBrowser1.DocumentCompleted += (wb, args) => // { // var button = webBrowser1.Document.GetElementById("srchbtn"); // if(button != null) button.Click += (t, a) => { MessageBox.Show("検索しましたね!"); }; // }; }
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { var q = webBrowser1.Document.GetElementsByTagName("INPUT").OfType<HtmlElement>() .Where(input => input.GetAttribute("type").ToLower() == "text"); foreach (var text in q) { text.KeyPress += (tag, args) => { args.ReturnValue = args.KeyPressedCode != 13; }; } }
|
|