【问题标题】:How do I click an ASP.NET webform's button when the page is hosted in a WebBrowser Control当页面托管在 WebBrowser 控件中时,如何单击 ASP.NET 网络表单按钮
【发布时间】:2009-10-02 07:06:37
【问题描述】:

我在网页中有一个标准的 ASP.NET Web 表单,该页面托管在带有 WebBrowser 控件的 .NET Winform 中。使用c#如何控制WebBrowser控件提交ASP.NET表单? (例如以某种方式“点击”Winform 中的按钮?)

更新:为了让事情复杂化,我们有 ASP.NET 验证器,它们似乎使简单的 document.forms(0).submit() 不起作用

【问题讨论】:

    标签: c# asp.net winforms webbrowser-control


    【解决方案1】:

    我回答了一个类似的问题。检查这个:simulate Web Page keystroke

    您可以使用以下代码

    WebBrowser1.Document.Forms("loginform").InvokeMember("submit");
    

    【讨论】:

    • 谢谢,几乎成功了,但是 ASP.NET 验证器阻止你直接调用 form.submit()
    • 您可能错过了填写任何表单字段吗?
    • 我认为验证器实际上阻止了 form.submit 事件的触发,因为您没有收到消息说字段没有像您正常按下按钮时那样填写。
    【解决方案2】:

    由于 ASP.NET 验证器的复杂性以某种方式干扰了正常的 form.submit() 流程,因此必须调用提交按钮的 click 方法:

    WebBrowser1.Document.getElementById("mybutton").InvokeMember("click");
    

    【讨论】:

      猜你喜欢
      • 2012-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-16
      • 2018-09-02
      相关资源
      最近更新 更多