高手进来帮帮忙呀C#调webBrowser的问题???

chenqi1992626 2010-10-12 04:38:49
HtmlDocument web = webBrowser1.Document;
HtmlElement btnSubmit = web.All["btnloginfree"]; //获取登录对应元素
HtmlElement tbUserid = web.All["username"]; //获取用户名对应元素
//HtmlElement tbStyle = webBrowser1.Document.All["style"]; //获取版本对应元素
HtmlElement tbPasswd = web.All["password"]; //获取密码对应元素
if (tbUserid == null || tbPasswd == null)
return;
tbUserid.SetAttribute("value", this.txtUserName.Text); //给用户名赋值
tbPasswd.SetAttribute("value", this.txtPassWord.Text); //给密码赋值
btnSubmit.InvokeMember("click"); //模拟点击登录按
//Thread.Sleep(5000); //延迟无效
for (int i = 0; i < webBrowser1.Document.Links.Count; i++)
{
string str = webBrowser1.Document.Links[i].InnerHtml;
if (str == "邮箱设置")
{
webBrowser1.Document.Links[i].InvokeMember("click");
}
}
延迟句该换成什么呀????

这样子好像会跳过,谁有好的办法可以解决呀
...全文
118 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
宝_爸 2010-10-14
  • 打赏
  • 举报
回复
加标志,在DocumentCompleted判断。

DocumentCompleted时,页面才被全部载入到webbrowser中。这时候,才应该开始解析页面。
ZengHD 2010-10-13
  • 打赏
  • 举报
回复
btnSubmit.InvokeMember("click"); 之后仍然会提交到新页面,仍然会触发webBrowser1_DocumentCompleted事件,在DocumentCompleted事件处理就行了
大飞飞虫 2010-10-13
  • 打赏
  • 举报
回复
你不如用回调的方式比较保险,延迟的话,根据网络状况设定时间不同,稳定性也不好。
既然WB是你自己控制的,能够获取 complete/ready 的事件,在事件里去处理sleep后面的逻辑。
chenqi1992626 2010-10-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zenghd 的回复:]
btnSubmit.InvokeMember("click"); 之后仍然会提交到新页面,仍然会触发webBrowser1_DocumentCompleted事件,在DocumentCompleted事件处理就行了
[/Quote]

问题是下面不只“邮箱设置”一个操作下面还有好几个,而且就算我就执行一个操作,DocumentCompleted事件会不停的被触发,一直在刷
宝_爸 2010-10-13
  • 打赏
  • 举报
回复
在DocumentCompleted中处理。
wuyq11 2010-10-12
  • 打赏
  • 举报
回复
通过使用Timer等方法设置延迟间隔,不使用Sleep方法停止当前线程的执行以求达到延迟目的
WebBrowser控件也处于当前线程内,Sleep会同时暂停WebBrowser控件的运作。
内容概要:本文系统研究了在电力系统负荷发生突变的动态环境下,采用无迹卡尔曼滤波(UKF)与自适应无迹卡尔曼滤波(AUKF)进行三相状态估计的方法。通过Matlab平台实现了两种滤波算法的仿真模型,构建了包含三相电力系统建模、非线性状态方程推导、量测系统设计在内的完整状态估计框架。重点对比分析了UKF与AUKF在突变负荷扰动下的估计精度、收敛速度与鲁棒性,深入探讨AUKF通过实时整噪声协方差实现自适应的能力,从而有效应对系统模型不确定性和外部动态变化,提升状态估计的可靠性。研究为智能电网在复杂动态工况下的实时监控、安全评估与优化控制提供了坚实的算法基础与仿真验证手段。; 适合人群:具备电力系统分析、现代控制理论基础及一定Matlab编程能力的研究生、科研人员和工程技术人员。; 使用场景及目标:① 掌握UKF在非线性电力系统状态估计中的具体应用流程与实现细节;② 深入理解AUKF的自适应机制及其在负荷突变、模型失配等动态工况下提升估计性能的原理与优势;③ 为智能电网的状态监测、故障诊断、实时度与主动防御等高级应用提供可靠的算法支持与可复现的仿真平台。; 阅读建议:建议读者结合电力系统状态估计的经典理论,仔细研读并运行所提供的Matlab代码,重点关注系统模型的建立、UKF/AUKF算法的参数初始化、负荷突变事件的建模方式,以及两种算法在电压、电流等状态变量估计误差上的对比分析,通过仿真结果的可视化深入理解算法差异与工程应用价值。

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧