2017-03-17 180 views
0

当使用Web浏览器编码C#时,使用Gecko库时出现问题。C#Gecko web浏览器显示,然后在10秒后退出

我在这里的代码:

public Form1() 
{ 
    InitializeComponent(); 

    Gecko.Xpcom.Initialize(Application.StartupPath + "\\xulrunner"); 

    string link = "http://google.com/"; 
    geckoWebBrowser1.Navigate(link); 
    System.Threading.Thread.Sleep(10000); 
    Environment.Exit(0); 
} 

我想,当我运行的应用程序,它会显示我与谷歌的内容,然后自动退出10秒钟后网页浏览器。

谢谢。

回答

0

看你的例子,你有一个非常快速的电脑,当运行的应用程序;

1-的InitializeComponent 1毫秒传递

2- Gecko.Xpcom.Initialize 1毫秒传递

3-串链接1毫秒传递

4- geckoWebBrowser1.Navigate(链接)通过1毫秒(但可能页面加载20.000毫秒)

5- Thread.Sleep(10000); 10.000 ms睡眠 并退出。

现在你应该记录完整的事件,也许可用的计时器,因为所有线程睡眠时,你的解决方案将无法正常工作。

public Form1() 
{ 
    InitializeComponent(); 

    Gecko.Xpcom.Initialize(Application.StartupPath + "\\xulrunner"); 

    string link = "http://google.com/"; 
    geckoWebBrowser1.Navigate(link); 
    geckoWebBrowser1.DocumentCompleted += geckoWebBrowser1_DocumentCompleted; 
} 



private void geckoWebBrowser1_DocumentCompleted(object sender, Gecko.Events.GeckoDocumentCompletedEventArgs e) 
{ 
    timer1.start(); 
} 

最后一个,计时器和application.exit。