20023
# 概要

WebBrowserで特定のサイトをクローリングする際、パスワードを入力する要素に対するkeyupイベントの発火を受けて非活性状態のボタンを活性化させて、クリックできるようになるボタンがあります。  
このボタンは単にWebBrowser内のボタンのHTMLElementを拾ってInvokeMember("click")しただけでは押せません（次のページへ遷移できません）。  
ボタンを押して次のページへ遷移させたいです。

# 詳細

パスワードを入力するinput要素とボタン要素を含むHTMLは次のようなものです。

・パスワードのinput

```

    <td>
        <input name="moge" id="moge" type="password" size="11" maxlength="4" autocomplete="off" value=""></input>
    </td>
    
```

・ボタン

```

    <li>
        <input name="hoge" id="btn" onclick="return shitanisetsumei()" type="image" src="hoge.png" disabled=""></input>
    </li>
    
```

ボタンにあるshitanisetsumei()はボタンがクリックされていなければtrueを返すボタン連打対策のようです。

サイトをWebBrowserでなく人の手で辿っていくと、パスワードのinput要素のキーを入力する際、キーを押下して離す際にボタンが活性状態になります。

WebBrowserでこのボタンの活性状態を作り（form要素に対してkeyupイベントを発火させる？）、ボタンをクリックしたいのですがその方法がわかりません。

# 動作環境

・.NET Frame Work 4.5  
・Visual Studio2013

よろしくお願いします。
CC BY-SA 3.0
2015-12-15T09:05:58.503
20021
2015-12-15T11:03:28.307
12459
question
c# .net
C#のWebBrowserでkeyupイベントを発生擬似的に発生させる方法がわかりません。
コメントをいただいた通り、

```

    HTMLElement button = document.GetElementById("btn");
    button.Enabled = true;
    button.InvokeMember("click");
    
```

で解決できました。ありがとうございました。
CC BY-SA 3.0
2015-12-15T11:03:28.307
20023
2015-12-15T11:03:28.307
12459
20021
answer