这个类和MSHTML.IHTMLWindow2是不同的,在VS2005新增加的,应该说是包装了原来的IHTMLWindow2 接口。那么和原来的用法就不同了。
注意:此类在 .NET Framework 2.0 版中是新增的。
表示包含一个或多个 HtmlDocument 实例的逻辑窗口。
命名空间:System.Windows.Forms
程序集:System.Windows.Forms(在 system.windows.forms.dll 中)
Public NotInheritable Class HtmlWindow
Dim instance As HtmlWindow
public sealed class HtmlWindow
public ref class HtmlWindow sealed
public final class HtmlWindow
public final class HtmlWindow
不要将 HtmlWindow 与 Windows 窗体或 Win32 API 中的窗口概念混淆,不存在直接与 HtmlWindow 的实例相对应的 HWND 或类似的 Windows 资源。但是,HtmlWindow 提供了对用户屏幕上文档位置的高级说明,以及通过提示和对话框的方式与用户交互的方法。HtmlWindow 为网页的文档及其元数据充当逻辑容器,例如文档的位置和 Web 浏览器的功能。
一个网页由一个文档或一个 FRAMESET(它包含一个或多个 FRAME 元素)组成,其中每个元素都承载各自的文档。Web 开发人员使用框架集并排显示逻辑上相关的页面(例如,在导航页旁边显示内容页)。当页面由单个文档组成时,可以通过 HtmlWindow 的 Document 属性来访问它;如果页面使用框架,可以通过 Frames 集合(由一个或多个 HtmlWindow 对象组成)来访问它们的文档。
当在 Windows 窗体应用程序中承载 WebBrowser 控件时,可以选择使用标准 Windows 窗体类(如 Form 或 MessageBox)与用户交互,或者可以使用为此目的定义的 HtmlWindow 的方法。Alert 方法显示一个带有自定义文本和一个“确定”按钮的简单对话框;Prompt 向用户显示一行自定义文本和一个文本输入字段;Confirm 显示一个包含一行自定义文本及“确定”和“取消”按钮的对话框。
您可以使用 HtmlWindow 打开包含新文档的新窗口。Open 将指定的 URL 加载到已命名的窗口中,如果不存在该窗口则创建它,而 OpenNew 总是在新创建的窗口中打开其 URL。
下面的代码示例包含两个方法。第一个方法创建显示状态栏、名为 displayWindow 的窗口,并在其中打开 URL。第二个方法在相同窗口中打开另一个 URL,但指定只应显示位置栏。请注意,所显示的窗口和控件的尺寸取决于首先打开的 URL。代码示例要求您的窗体包含一个名为 WebBrowser1 的 WebBrowser 控件。
Private Sub DisplayFirstUrl() If (Not WebBrowser1.Document Is Nothing) Then With WebBrowser1.Document ' If this is called first, the window will only have a status bar. .Window.Open(New Uri("http://www.microsoft.com/"), "displayWindow", "status=yes,width=200,height=400", False) End With End If End Sub Private Sub DisplaySecondUrl() If (Not WebBrowser1.Document Is Nothing) Then With WebBrowser1.Document ' If this is called first, the window will only have an Address bar. .Window.Open(New Uri("http://msdn.microsoft.com/"), "displayWindow", "width=400,height=200,location=yes", False) End With End If End Sub
private void DisplayFirstUrl() { if (webBrowser1.Document != null) { //If this is called first, the window will only have a status bar. webBrowser1.Document.Window.Open(new Uri("http://www.microsoft.com/"), "displayWindow", "status=yes,width=200,height=400", false); } } private void DisplaySecondUrl() { if (webBrowser1.Document != null) { // If this is called first, the window will only have an Address bar. webBrowser1.Document.Window.Open(new Uri("http://msdn.microsoft.com/"), "displayWindow", "width=400,height=200,location=yes", false); } }
Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition
.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。