WebBrowser控件中设置输入标签的价值(Setting Value of an Input T

2019-07-19 04:44发布

我试图帮助用户登录到使用自定义他们的帐户WebBrowser控件。 我想设置一个输入变量的值使用到玩家用户名WebBrowserInvokeScript功能。 不过,我目前的解决方案是什么都不做,但呈现一个空白页。

我当前的代码看起来像这样(网页是我的名字WebBrowser控件):

web.Navigate(CurrentURL, null, @"<script type='text/javascript'>
    function SetPlayerData(input) {
        username.value = input;
        return true;
    }
</script>");
web.Navigated += (o, e) =>
{
    web.IsScriptEnabled = true;
    web.InvokeScript("SetPlayerData", @"test");
};

如前所述,这不马上工作。 我试图做到这一点在Windows Phone等数个例子的我在这里和在其他地方都不行发现,因为我没有获得相同的功能。

我将如何执行此成功?

编辑:也许我不清楚,但我用的Windows Phone,它有一个可用的有限API意味着我没有访问工作Document属性和一些其他的功能。 我有机会获得InvokeScript ,但没有更多。

Answer 1:

webBrowser1.Document.GetElementById("navbar_username").InnerText ="Tester";
webBrowser1.Document.GetElementById("navbar_password").InnerText = "xxxxxxxxxxx";

foreach (HtmlElement HtmlElement1 in webBrowser1.Document.Body.All)
    {
    if (HtmlElement1.GetAttribute("value") == "Log in")
        {
        HtmlElement1.InvokeMember("click");
        break;
        }
    }

您可能会发现更多在这里: http://deltahacker.gr/2011/08/15/ftiakste-to-diko-sas-robot/



文章来源: Setting Value of an Input Tag in WebBrowser Control