完成窗口加载后,如何自动单击按钮。 [英] After completing the loading of windows form how can I click a button automatically.

查看:71
本文介绍了完成窗口加载后,如何自动单击按钮。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

请参阅以下代码:



  private   Form1_Load( object  sender,EventArgs e)
{

geckoWebBrowser1。 DocumentCompleted + = new EventHandler(geckoWebBrowser1_DocumentCompleted);

geckoWebBrowser1.Navigate(url);

}

private void PDF_Click(< span class =code-keyword> object
sender,EventArgs e)
{

var item1 = geckoWebBrowser1 .Document.GetElementById( DynamicGrid);

htmlelem = item1.InnerHtml;
}





我想在完成Form1_Load活动后自动调用事件PDF_Click。



有可能吗?



然后请给我一个建议。

解决方案

< blockquote>



为什么你试图模拟按钮点击事件,如果只是它正在做的功能是调用GetDOM()方法?直接从Form的Load事件中调用该方法并不简单吗?试试这个:



  private   void  Form1_Load( object  sender,EventArgs e)
{
geckoWebBrowser1.DocumentCompleted + = new EventHandler(geckoWebBrowser1_DocumentCompleted);
geckoWebBrowser1.Navigate(url);

GetDOM(); // < - 这应该足够了
}





[更新]

我想我现在明白你要做什么了。我假设你想在文档加载之后调用PDF_Click。我是对的吗?

在这种情况下,你应该在这个方法中调用PDF_Click或你想要的任何方法:

 geckoWebBrowser1_DocumentCompleted( object  sender,EventArgs e)





Form_Load事件在表单创建和初始化后执行,但是它显示在屏幕上。在该方法中,您将DocumentCompleted事件处理程序分配给geckoWebBrowser组件。因此,如果你想处理加载的文件,即打印或保存,或者你应该在加载DocumentWas后执行这些操作。

如果我是对的,请告诉我?



干杯!


  private   void  Form1_Load( object  sender,EventArgs e)
{

geckoWebBrowser1.DocumentCompleted + = new EventHandler(geckoWebBrowser1_DocumentCompleted);

geckoWebBrowser1.Navigate(url);

}

private void PDF_Click(< span class =code-keyword> object sender,EventArgs e)
{

ProcessPDF();
}

private void ProcessPDF()
{
var item1 = geckoWebBrowser1.Document.GetElementById( DynamicGrid);

htmlelem = item1.InnerHtml;
}
public void geckoWebBrowser1_DocumentCompleted( object sender,EventArgs e)
{
// web浏览器文档加载完成后,现在可以生成pdf
ProcessPDF();
}


只需在页面末尾加载事件中添加以下行

 PDF_Click ( new   object (), new  EventArgs ()); 


Please see the following code:

private void Form1_Load(object sender, EventArgs e)
        {

            geckoWebBrowser1.DocumentCompleted += new EventHandler(geckoWebBrowser1_DocumentCompleted);

            geckoWebBrowser1.Navigate(url);

        }

private void PDF_Click(object sender, EventArgs e)
        {
           
            var item1 = geckoWebBrowser1.Document.GetElementById("DynamicGrid");

                htmlelem = item1.InnerHtml;
        }



I want to call the event PDF_Click automatically after completing the Form1_Load event.

Is it possible ?

Then please give me a suggestion.

解决方案

Hi,

Why you're trying to simulate button click event if only function it is doing is to call GetDOM() method? Isn't simpler to call that method directly from Form's Load event? Try this:

private void Form1_Load(object sender, EventArgs e)
{
    geckoWebBrowser1.DocumentCompleted += new EventHandler(geckoWebBrowser1_DocumentCompleted);
    geckoWebBrowser1.Navigate(url);

    GetDOM(); // <-- this should be enough
}



[Update]
I think that I understand now what you're trying to do. I assume that you want to call PDF_Click after DOCUMENT WERE LOADED. Am I right?
In this case you should call PDF_Click or whatever method you want inside this method:

geckoWebBrowser1_DocumentCompleted(object sender, EventArgs e)



Form_Load event is executed after form is created and initialized, but befeore it is Shown on screen. In that method you're assigning DocumentCompleted event handler to geckoWebBrowser component. So if you want to process loaded document, i.e. print it or save it or else, you should do that actions after DocumentWas loaded.
Let me know if I'm right?

Cheers!


private void Form1_Load(object sender, EventArgs e)
        {

            geckoWebBrowser1.DocumentCompleted += new EventHandler(geckoWebBrowser1_DocumentCompleted);

            geckoWebBrowser1.Navigate(url);

        }

private void PDF_Click(object sender, EventArgs e)
        {

             ProcessPDF();
        }

private void ProcessPDF()
        {
                var item1 = geckoWebBrowser1.Document.GetElementById("DynamicGrid");

                htmlelem = item1.InnerHtml;
        }
public void geckoWebBrowser1_DocumentCompleted(object sender, EventArgs e)
        {
              // web browser document loading completed, now you can generate the pdf
              ProcessPDF();
        }


Simply add below line in end of page load event

PDF_Click(new object(),new EventArgs());


这篇关于完成窗口加载后,如何自动单击按钮。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆