当前位置:首页>>开发编程>>VS.NET>>新闻内容
实现在IE中托管.NET的Windows Form
作者:励志人生 发布时间:2004-9-6 9:53:07 文章来源:yesky
  如果曾经使用Java开发过Web应用程序,你一定会对Java applets比较熟悉,这是一种基本上在浏览器中运行的小型程序。当浏览器加载包含有Java applets标志的HTML代码时,Java applets就会执行,网页中的Windows Forms控件的运行方式与Java applets相似。我们可以使用由Windows Forms技术提供的丰富的类开发Windows Forms控件,然后在网页中部署这些控件,当浏览器加载这些网页时,就会执行包含在Windows Forms控件中的代码。

  .NET的伟大之处之一是它提供的与IE的无缝集成能力。例如,我们甚至能够在用户不知道的情况下从IE中激活一个Windows Forms控件。尽管利用了由.NET CLR提供的Code Access Security的所有功能,但这是在无需进行注册的情况下完成的。

  当开发Windows Forms控件时,我们就通过继承的方式拥有了Windows Forms类所提供的所有功能。例如,我们可以使用Windows Forms控件验证技术对用户输入的数据进行广泛的验证,同样地,我们可以从窗体控件中调用远程Web服务。通过使用所有这些技术,我们就能够使用.NET平台开发丰富、功能强大的应用程序。

  实现

  在这一部分,我们将学习如何创建简单的Windows Forms控件并将它托管在IE中。下面是激活IE中Windows Forms控件的5个步骤:

  ·创建Windows Forms控件。

  ·创建包含标识Windows Forms控件的对象标志的HTML文档。

  ·配置正确激活控件所需要的虚拟目录。

  ·配置代码访问权限。

  ·运行该控件。

  下面我们就来详细地学习上面的每一个步骤。

  创建Windows Forms控件

  在这一步骤中,我们将创建一个简单的Windows Forms控件,它向用户显示“Hello World”信息。如政略所示,我们将首先创建一个名为HelloWorldControl的新Visual C# Windows Control Library项目。

  一旦创建项目后,我们将把缺省的用户控件更名为HelloWorldCtl。我们将在用户控件上添加一个名为lblMessage的标签控件和一个名为btnClick的按钮。当用户点击点击按钮时,程序就会执行下面的代码,向用户显示一个简单的信息:

private void btnClick_Click(object sender, System.EventArgs e)
{
 lblDisplayMessage.Text = "Hello World";
}

  既然已经创建了控件,下面我们来编译该项目,并创建可执行代码。

  创建HTML网页

  在这一步骤中,我们将创建一个HTML文档,并在其中插入用来激活Windows Forms控件的对象标志。HTML网页如下:

<html>
<body>
<p>Hello World Control<br> <br></body>
<object id="HelloWorldControl1"classid="http:HelloWorldControl.dll#HelloWorldControl.HelloWorldCtl"
height="500" width="500" VIEWASTEXT>
</object>
<br><br>
</html>

  在对象标志的classid属性中,我们将路径指定为控件库组合体和控件的全名,控件的全名包括名字空间和控件类名字。从上面的代码中可以看到,组合体和控件全名之间用#号隔开,这二个参数构成了识别该控件的唯一控件标识符。由于是唯一地由名字HelloWorldControl1标识的,我们还可以针对该控件编写客户端脚本代码。

  配置虚拟目录

  创建HTML代码后,我们就可以创建一个名为HelloWorldControlHost的新虚拟目录,并在其中添加控件(HelloWorldControl.dll)和HTML文档(HelloWorld.htm)。除了配置虚拟目录外,将虚拟目录的执行权限设置为Scripts也是非常重要的。如果将其执行权限设置为Scripts & Executables,控件就不会被正确地激活。通过打开虚拟目录的Properties窗口,我们可以验证虚拟目录的权限。

  配置代码访问权限

  如果控件在企业内部网上,它公正确地执行,但如果要运行来自互联网网站上的控件,就需要对IE进行配置或修改安全策略,使它能够运行。通过将托管网页看成是受信任区段的一部分,就能够做到这一点。为了将你的站点设置为受信任区段的一部分,我们可以在IE中通过选择“工具”->“选项”->“安全”->“受信任的站点”,然后将你的站点添加到列表中,再点击“OK”按钮。这样下次再浏览到该网页时,控件就会得到正确的执行,因为已经设置了互联网许可。

  运行控件

  要运行控件,只要在浏览器中浏览托管该控件的HTML网页即可。在显示的HTML网页中,如果点击“Click Here”命令按钮,控件就会如下图所示显示“Hello World”的消息。

  在这个例子中,我们主要演习了如何创建简单的Windows Forms控件,并在IE中托管它。


最新更新
·C#中使用Split分隔字符串的技
·VS2008开发中Windows Mobile
·PC机和移动设备上绝对路径的
·C#程序加壳的方法(使用Sixx
·当前上下文中不存在名称Conf
·请插入磁盘:Visual Studio 2
·用VS.NET读取Flash格式文件信
·在ASP.NET中使用AJAX的简单方
·VS.NET 2005中常用的一些代码
·安装VS.NET 2005 SP1补丁全攻
相关信息
·C#中使用Split分隔字符串的技巧
·PC机和移动设备上绝对路径的获取(C#)
·C#程序加壳的方法(使用Sixxpack)
·当前上下文中不存在名称ConfigurationManager的解决方法
·C#的支付宝Payto接口代码
·C#实现窗口最小化到系统托盘
·解密QQ的MsgEx.db消息文件格式
·QQ的TEA填充算法C#实现
·C#用Guid获取不规则的唯一值(标识)
·基于Windows Mobile 5.0的掌上天气预报设计
画心
愚爱
偏爱
火苗
白狐
画沙
犯错
歌曲
传奇
稻香
小酒窝
狮子座
小情歌
全是爱
棉花糖
海豚音
我相信
甩葱歌
这叫爱
shero
走天涯
琉璃月
Nobody
我爱他
套马杆
爱是你我
最后一次
少女时代
灰色头像
断桥残雪
美了美了
狼的诱惑
我很快乐
星月神话
心痛2009
爱丫爱丫
半城烟沙
旗开得胜
郎的诱惑
爱情买卖
2010等你来
我叫小沈阳
i miss you
姑娘我爱你
我们都一样
其实很寂寞
我爱雨夜花
变心的玫瑰
犀利哥之歌
你是我的眼
你是我的OK绷
贝多芬的悲伤
哥只是个传说
丢了幸福的猪
找个人来爱我
要嫁就嫁灰太狼
如果这就是爱情
我们没有在一起
寂寞在唱什么歌
斯琴高丽的伤心
别在我离开之前离开
不是因为寂寞才想你
爱上你等于爱上了错
在心里从此永远有个你
一个人的寂寞两个人的错