关于C#中的DocumentComplete事件
答案:3 悬赏:30 手机版
解决时间 2021-01-06 23:47
- 提问者网友:王者佥
- 2021-01-05 23:34
关于C#中的DocumentComplete事件
最佳答案
- 五星知识达人网友:掌灯师
- 2021-01-06 00:17
使用timer控件来做延时而不要用sleep,因为sleep是中断线程用的,所以你在主线程里用sleep的时候会中断ui的更新,这时ie也就没有响应了。
单纯使用 Navigate2 应该不会占用过多的内存,是否是创建了过多的浏览器对象?追问Timer具体该怎么用呢....我查了很多资料都晕了
谢谢追答 static void IE_DocumentComplete(object pDisp, ref object URL) {
System.Timers.Timer timer = new System.Timers.Timer(30000);
timer.Elapsed += new System.Timers.ElapsedEventHandler(timer_Elapsed);
timer.AutoReset = true;
timer.Enabled = true;
}
void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) {
IE.Navigate2(url2);
}追问还有个小小的问题,我在VS里输入timer.Elapsed +=指之后出来了一个按TAB自动插入的提示,我按了TAB后就变成了timer.Elapsed +=timer_Elapsed;
然后生成了timer_Elapsed()
想知道下这样子跟timer.Elapsed += new System.Timers.ElapsedEventHandler(timer_Elapsed);有什么区别追答这只是更简单的写法,效果是一样的。
另外 timer.AutoReset = true; 这里错了,应该改成false,否则会不停触发事件。
单纯使用 Navigate2 应该不会占用过多的内存,是否是创建了过多的浏览器对象?追问Timer具体该怎么用呢....我查了很多资料都晕了
谢谢追答 static void IE_DocumentComplete(object pDisp, ref object URL) {
System.Timers.Timer timer = new System.Timers.Timer(30000);
timer.Elapsed += new System.Timers.ElapsedEventHandler(timer_Elapsed);
timer.AutoReset = true;
timer.Enabled = true;
}
void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) {
IE.Navigate2(url2);
}追问还有个小小的问题,我在VS里输入timer.Elapsed +=指之后出来了一个按TAB自动插入的提示,我按了TAB后就变成了timer.Elapsed +=timer_Elapsed;
然后生成了timer_Elapsed()
想知道下这样子跟timer.Elapsed += new System.Timers.ElapsedEventHandler(timer_Elapsed);有什么区别追答这只是更简单的写法,效果是一样的。
另外 timer.AutoReset = true; 这里错了,应该改成false,否则会不停触发事件。
全部回答
- 1楼网友:何以畏孤独
- 2021-01-06 01:34
应该没区别的追问对......
- 2楼网友:往事隔山水
- 2021-01-06 00:36
添加一个timer1,timer2,timer1中让他来与当前时间进行计算,当时间等于30秒的时候,执行timer2事件,timer2中写入你即将要执行的代码就可以了!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯