摘要: 关于HtmlElement类的 InnerHtml、InneText、OuterHtml、OuterText属性的使用MSDN里的介绍看得不是很明白,以下是一个小测试 DIV容器 A:DIV容器 B:code HtmlDocument document = wbs1.Document; HtmlElement el = document.All["A"]; Trace.WriteLine("InnerHtml:" + el.InnerHtml); ... 阅读全文
posted @ 2009-07-14 09:08 x_craft 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 在多线程中免不了要有一些更新UI的操作,但在.net framework中是不允许直接在工作线程中直接操作Control,这在Jeffrey的核心编程中也有提及。.net为在工作线程中更新UI提供了一种机制,那就是Invoke,在Control类中定义了一个Invoke方法,MSDN中Invoke的解释如下:在拥有此控件的基础窗口句柄的线程上执行委托。此外Control还有一个InvokeRequired 属性,MSDN中的解释如下:获取一个值,该值指示调用方在对控件进行方法调用时是否必须调用 Invoke 方法,因为调用方位于创建控件所在的线程以外的线程中。获取一个值,该值指示调用方在对控件 阅读全文
posted @ 2009-07-13 23:37 x_craft 阅读(89) 评论(0) 推荐(0) 编辑
摘要: C#里线程操作类大概有三个ThreadBackgroundWorkerThreadPool这里先介绍使用Thread创建线程的方法Thread t; //方法一:使用ThreadStart委托 t = new Thread(new ThreadStart(TProc1)); t.Start();//方法一的变形:简短形式t = new Thread(TProc1);t.Start();//方法一的变形:直接使用委托 t = new Thread(delegate() { Trace.WriteLine("方法一变形线程启动"); }); t.Start(... 阅读全文
posted @ 2009-07-13 21:16 x_craft 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 方法:Navigate()事件:Navigating()Navigated()DocumentCompleted()Naviagte()的一个有newWidnow参数的重载用于打开一个默认浏览器窗口并加载目标url,此时这个默认浏览器窗口已独立于WebBrowserNavigating()的e参数里有个Cancel属性,可用于取消导航操作Navigated()与DocumentCompleted()的区另在于前者意味着页面数据已加载完毕,后者意味着页面解析完毕,可以作以下试验:Naviagte一个放置了cnzz计数器(js)的站点,在Navigated里输出DocumentText并Sleep 阅读全文
posted @ 2009-07-12 20:33 x_craft 阅读(94) 评论(0) 推荐(0) 编辑