论文网首页|会计论文|管理论文|计算机论文|医药学|经济学论文|法学论文|社会学论文|文学论文|教育论文|理学论文|工学论文|艺术论文|哲学论文|文化论文|外语论文|论文格式
中国论文网

用户注册

设为首页

您现在的位置: 中国论文网 >> 工科论文 >> 通信学论文 >> 正文 会员中心
 通信学论文   交通运输论文   工业设计论文   环境工程论文   电力电气论文   水利工程论文   材料工程论文   建筑工程论文   化学工程论文
 机械工程论文   电子信息工程论文   建筑期刊   工科综合论文   汽车制造
C 开发中webBrowser控件和窗体通信案例研究
  [摘 要] 针对b/s开发模式的流行和需求,利用c#开发窗体时,webbowser控件的利用无疑是个不错的选择,webbowser控件可以兼容目前大多数网络资源的呈现和访问,作为vs.net开发工具自身的控件,使用人员可以方便的应用。因此如何在窗体和webbowser控件之间,进行数据传递,是很多开发人员必须面对的一个问题,本文从一个实例入手来分析建立数据传递的整个过程。
  [关键词] 窗体 webbowser 事件
  
  信息技术的不断深入发展,推动了网络技术的更新,各种新型的网络应用呈现繁荣的状态,人们开始更习惯利用网络浏览器来完成各种工作,vs dot net开发工具中自带了webbowser控件,主要用于windows环境下的网页浏览用;用于窗体开发,可以利用网页炫丽的图片、文字、动画以及javascript、asp语言呈现的种种特效来美化窗体,这也是一些高端用户经常要求;甚至利用这个控件可以开发其核心基于internet explorer(ie)的专业网络浏览器。由于利用linux其它操作系统的用户毕竟是少数,因此开发基于windows窗体环境的c/s、b/s应用架构满足目前很多用户提出的需求:可以定制所需要的网络资源、数据对内透明、定制ie所需功能防止用户其它操作等。所有开发的前提就是webbrowser控件如何同windows 窗体进行数据传递,需要那些事件来响应这些操作,下面,通过一个实例来研究数据传值和事件响应的问题。
  一、html语法研究
  hypertext markup language(html)是超文本标记语言,其目的在于运用标记(tag)使文件达到预期的显示效果,目前已经发展到html 4.01版。WWW.11665.cOm随后发展了xhtml语言,它比html的语法更加严格。
  webbrowser可以加载的*.htm、*.html和*.xhtml文件。这些网页文件中的各元素都有自己独有的标记方式。比如:
   图形标记:用以插入图库及设定图形属性。
   连结标记:加入连结。
  框架设定:用于设定网页框架。
  通过tag标记可以对网页中各元素进行判断,这就为网页同窗体间的通信提供了一个非常好的通道。
  二、webbrowser控件[1]
  webbrowser是一个在.net framework 2.0版中新增的.的控件类。使用webbrowser控件类使用户可以在windows窗体应用程序中导航网页以及支持浏览器的其它文档。例如可以使用webbrowser控件在应用程序中提供基于html的集成用户帮助或web浏览功能。此外,还可以使用 webbrowser控件向windows窗体客户端应用程序添加web的现有控件。
  webbrowser控件在使用中由于加载页面的内容量很大,会占用较大的系统资源,使用完该控件后一定要调用dispose方法,以便确保及时释放资源。而且必须在附加事件的同一线程上调用dispose方法,该线程应始终是消息或用户界面(ui)线程。
  三、webbrowser控件和窗体通信实例
  下面,就通过一个实例来展示webbrowser控件如何向窗体传递参数。
  开发环境是windows xp sp2,.net framework 3.5,visual studio.net 2008。
  1、打开visual studio.net 2008,选择使用c#语言开发,新建一个工程webbrowserandform。
  打开工具箱,选择webbrowser控件、contextmenustrip控件放置到窗体。
  在窗体的命名空间处添加:
  using system.threading;
  “保存图片”属性name:saveasimagetoolstripmenuitem;
  “设置成桌面”属性name:setasdesktopwallpapertoolstripmenuitem;
  “打开”属性name:opentoolstripmenuitem;
  “刷新”属性name:refreshtoolstripmenuitem。
  2、在窗体load事件中添加如下代码
  webbrowser1.navigate("http://www.example.com");
  webbrowser1.contextmenustrip=contextmenustrip1;
  webbrowser1.iswebbrowsercontextmenuenabled=false;
  3、自定义鼠标右击函数contextmenustrip1_opening()
  private void contextmenustrip1_opening(object sender,canceleventargs e)
  {
  point screencoord=new point(mouseposition.x, mouseposition.y);
  point browsercoord=webbrowser1.pointtoclient(screencoord);
  htmlelement elem=webbrowser1.document.getelementfrompoint(browsercoord);
  for(int i=0; i  {
  contextmenustrip1.items[i].visible=false;


  }
  switch(elem.tagname)
  {
  case "a":
  opentoolstripmenuitem.visible=true;
  break;
  case "img":
  saveasimagetoolstripmenuitem.visible=true;
  setasdesktopwallpapertoolstripmenuitem.visible=true;
  break;
  default:
  refreshtoolstripmenuitem.visible = true;
  break;
  }
  }
  4、运行结果
  按下f5运行后,界面如下,点击鼠标右键,会出现设计的右键菜单。
  四、结论
  通过实例展示,可以说明webbowser控件内的网页内容可以和windows窗体进行通信。
  参 考 文 献
  [1]http://msdn.microsoft.com/zh-cn/library/system.windows.forms.webbrowser.
  • 上一篇工学论文:
  • 下一篇工学论文:
  •  作者:尹少辉 [标签: 窗体 通信 ]
    姓 名: *
    E-mail:
    评 分: 1分 2分 3分 4分 5分
    评论内容:
    发表评论请遵守中国各项有关法律法规,评论内容只代表网友个人观点,与本网站立场无关。
    自然矿物资源开发前期的勘探管理
    都江堰渠首水情测报系统开发与研究
    测井资料在阜新刘家区煤层气开发中的应用
    稠油开发中矿级油藏管理模式探讨
    选题策划的开发路径探究
    A市天和苑房地产开发项目施工建设阶段风险管…
    C市东城明珠房地产开发项目成本管理组织体系…
    建设黄河大柳树水利枢纽是黑山峡河段开发的…
    新疆准东开发区供水工程设计关键技术及应用
    风险管理在房地产项目开发投资决策阶段的应…
    贝叶文化——打造版纳傣族文化开发的名片
    基于生态环境保护的小水电开发工程措施的研…
    | 设为首页 | 加入收藏 | 联系我们 | 网站地图 | 手机版 | 论文发表

    Copyright 2006-2013 © 毕业论文网 All rights reserved 

     [中国免费论文网]  版权所有