我正在尝试使用自定义WebBrowser
控件帮助用户登录其帐户。我正在尝试使用WebBrowser
的{{1}}函数将输入标记的值设置为玩家用户名。但是,我目前的解决方案除了渲染空白页面外什么也没做。
我当前的代码如下所示(web是我的InvokeScript
控件的名称):
WebBrowser
如上所述,这现在不起作用。我试图在Windows Phone上执行此操作,因此我在此处和其他位置找到的一些示例将无法工作,因为我无法访问相同的功能。
我如何成功执行此操作?
编辑:也许我不清楚,但我正在使用Windows Phone,它具有有限的API可用,这意味着我无法访问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");
};
属性和许多其他功能。我可以访问Document
,但不多了。
答案 0 :(得分:13)
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/