.NET开发

本类阅读TOP10

·NHibernate快速指南(翻译)
·vs.net 2005中文版下载地址收藏
·【小技巧】一个判断session是否过期的小技巧
·VB/ASP 调用 SQL Server 的存储过程
·?dos下编译.net程序找不到csc.exe文件
·通过Web Services上传和下载文件
·学习笔记(补)《.NET框架程序设计(修订版)》--目录
·VB.NET实现DirectDraw9 (2) 动画
·VB.NET实现DirectDraw9 (1) 托管的DDraw
·建站框架规范书之——文件命名

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
Using Windows Forms Controls in Internet Explorer

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

Using Windows Forms Controls in Internet Explorer

This document describes how to successfully execute Windows Forms controls within Internet Explorer (IE). Windows Forms controls within IE are activated without user prompt, require no registration and utilize the Common Language Runtime (CLR) code access security.

There are four steps in getting the Windows Forms control activated within Internet Explorer, each listed here and detailed below.

  • Configure Code Access Permissions
  • Create the Windows Forms control
  • Create an HTML document with an object tag
  • Create the virtual directory, copy content and set permissions
  • Run the control

1. Windows Forms Control : SimpleControl.dll

Almost any Windows Forms control could be, but for this example the SimpleControl that is included in the .NET Framework SDK QuickStart Tutorial Creating Controls will be used.

2. HTML Document : SimpleControl.html

The next step is to create an HTML document with and object tag to insert and activate the Windows Forms control. Some simple script and input tags will also be added to demonstrate programmatic access to the control.

Object tag
<object id="simpleControl1"
    classid="http:SimpleControl.dll#Microsoft.Samples.WinForms.Cs.SimpleControl.SimpleControl"
    height="300"
    width="300">
    <param name="Text" value="Simple Control">
</object>

The classid has two interesting parts; the path to the control library and the fully qualified name of the control separated by the pound sign. If you are familiar with an ActiveX object tag, youll notice the lack of a GUID. In the case of Windows Forms, the combination of path and fully qualified classname serve as the unique identifier.

Param tags are used to set properties on controls. The name attribute is the name of the property and the value attribute is the value of the property.

Script
<script>

function ChangeText() {
      simpleControl1.Text = text1.value;
}

</script>


<input type="text" id="text1"> <input type="button" value="Change Text" onclick="ChangeText()">

To gain programmatic access to your control, you can write script against it. A button and text box on the page is used in conjunction with the simple function ChangeText to set the text property of the control.

Complete

The following is the complete HTML code for this example.

<html>

<script>

function ChangeText() {
	simpleControl1.Text = text1.value;
}

</script>

<body>

    <p>Simple Control</p>
    <br>
    <br>
    
    <object id="simpleControl1"
        classid="http:SimpleControl.dll#Microsoft.Samples.WinForms.Cs.SimpleControl.SimpleControl"
        height="300"
        width="300">
        <param name="Text" value="Simple Control">
    </object>
    
    <br>
    <br>
    
    <input type="text" id="text1">
    <input type="button" value="Change Text" onclick="ChangeText()">

</body>

</html>

3. Virtual Directory

Create a new virtual directory and populate it with both the control (SimpleControl.dll) and the HTML document (SimpleControl.html).

Important: Set execution permissions on the virtual directory to scripts. The control will not be properly activated if the execution permissions are set to scripts & executables.

4. Configure Code Access Permissions

This sample will execute correctly if you are running the control from an intranet site and you have not altered the .Net Framework security policy. If you have altered policy, or if you are running the control from an internet site then you may need to configure Internet Explorer or alter security policy to allow it to run. One way to enable a specific site for control download and execution is to identify your hosting page as belonging to the Trusted zone. This change is done in Internet Explorer with the following steps.

1. Choose Tools|Options
2. Select the "Security" tab
3. Select the "Trusted Sites" icon
4. Click the Sites... button
5. Add your site using the dialog presented
6. Click OK to commit your changes

Now, when you browse to that page, it should be in the Trusted Sites zone which has the Internet permission set by default.

You can also configure the .net framework security policy to enable code to run from a particular web site or from the Internet. The SDK documentation contains details of how to configure security policy.

5. Run the Control

To run the control, just point Internet Explorer to SimpleControl.html in your virtual directory. If the control is not activating correctly it may be necessary to restart Internet Explorer or clear the assembly download cache.

Note:You can view the contents of your assembly download cache using gacutil /ldl on the command line. You can clear the contents of the cache using gacutil /cdl




相关文章

相关软件