zoukankan      html  css  js  c++  java
  • 怎样把Html文本转换为System.Windows.Form.HtmlDocment对象

    ============该文转自==========

    http://www.myexception.cn/asp-dotnet/99790.html

    =============================

    怎样把Html文本转换为System.Windows.Form.HtmlDocment对象
    把String转换为HtmlDocment,不能用webBrowser!


    ------解决方案--------------------------------------------------------
    MSDN帮助 中 明确的显示这个类 只能是 使用 webBrowser 


    ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.NETDEVFX.v20.chs/CPref17/html/T_System_Windows_Forms_HtmlDocument.htm

    注意:此类在 .NET Framework 2.0 版中是新增的。 

    提供对 WebBrowser 控件承载的 HTML 文档的顶级编程访问。 

    命名空间:System.Windows.Forms 
    程序集:System.Windows.Forms(在 system.windows.forms.dll 中) 

    语法 
    Visual Basic(声明) 
    Public NotInheritable Class HtmlDocument 

    Visual Basic(用法) 
    Dim instance As HtmlDocument 


    C# 
    public sealed class HtmlDocument 

    C++ 
    public ref class HtmlDocument sealed 

    J# 
    public final class HtmlDocument 

    JScript 
    public final class HtmlDocument 


    备注 
    HtmlDocument 为 Internet Explorer 的文档对象提供托管包装,该文档对象也称为 HTML 文档对象模型 (DOM)。您可以通过 WebBrowser 控件的 Document 属性获取 HtmlDocument 的实例。 

    HTML 文档中的 HTML 标记可以相互嵌套。因此,HtmlDocument 表示一个文档树,其子级是 HtmlElement 类的实例。下面的代码示例演示一个简单的 HTML 文件。 

    复制代码 
    <HTML> 
    <BODY> 
    <DIV name= "Span1 "> Simple HTML Form </DIV> 
    <FORM> 
    <SPAN name= "TextLabel "> Enter Your Name: </SPAN> 
    <INPUT type= "text " size= "20 " name= "Text1 "> 
    </FORM> 
    </BODY> 
    </HTML> 


    在此示例中,HtmlDocument 表示 HTML 标记内的整个文档。BODY、DIV、FORM 和 SPAN 标记各由一个单独的 HtmlElement 对象表示。 

    访问此树中的元素的方法有多种。使用 Body 属性可以访问 BODY 标记及其所有子标记。ActiveElement 属性提供 HTML 页上具有用户输入焦点的元素的 HtmlElement。HTML 页中的所有元素都可以有一个名称;All 集合将元素的名称用作索引来提供对每个 HtmlElement 的访问。GetElementsByTagName 将返回具有给定 HTML 标记名称(如 DIV 或 TABLE)的所有 HtmlElement 对象的 HtmlElementCollection。GetElementById 将返回对应于所提供的唯一 ID 的单个 HtmlElement。GetElementFromPoint 将返回可以在屏幕上所提供的鼠标指针坐标位置找到的 HtmlElement。 

    您也可以分别使用 Forms 和 Images 集合来循环访问表示用户输入窗体和图形的元素。 

    HtmlDocument 基于 Internet Explorer 的 DHTML DOM 实现的非托管接口:IHTMLDocument、IHTMLDocument2、IHTMLDocument3 和 IHTMLDocument4。HtmlDocument 只公开了这些非托管接口的最常用属性和方法。使用 DomDocument 属性(可以强制转换为所需的非托管接口指针),可以直接访问其他所有属性和方法。 

    HTML 文档可以包含框架,框架是 WebBrowser 控件内部的不同窗口。每个框架均显示它自己的 HTML 页。Frames 集合在没有 Window 属性的情况下也可以使用。您也可以使用 Window 属性来调整显示页的大小、滚动文档或向用户显示警报和提示。 

    HtmlDocument 公开在承载 HTML 页时期望处理的最常见事件。对于接口没有直接公开的事件,可以使用 AttachEventHandler 为该事件添加一个处理程序。 

    HTML 文件可以包含 SCRIPT 标记,这些标记封装使用活动脚本语言之一(如 JScript 或 VBScript)编写的代码。InvokeScript 方法用于执行 SCRIPT 标记中定义的属性和方法。 

    注意 
    虽然 HtmlDocument 中的大部分属性、方法和事件的名称都与非托管 DOM 上的对应项的名称相同,但为了与 .NET Framework 保持一致,某些名称已发生了改变。 


    示例 
    下面的代码示例通过 CreateElement,使用 Northwind 数据库中的数据动态创建一个 HTML TABLE。此外,还使用 AppendChild 方法,首先向行(TR 元素)中添加单元格(TD 元素),然后向表中添加行,最后将表追加到当前文档的末尾。该代码示例要求应用程序具有一个称为 WebBrowser1 的 WebBrowser 控件。 

    Visual Basic 复制代码 
    Private Sub DisplayCustomersTable() 
    ' Initialize the database connection. 
    Dim CustomerData As New DataSet() 
    Dim CustomerTable As DataTable 

    Try 
    Dim DBConn As New SqlConnection( "Data Source=CLIENTUE;Integrated Security=SSPI;Initial Catalog=Northwind; ") 
    Dim DBQuery As New SqlDataAdapter( "SELECT * FROM CUSTOMERS ", DBConn) 
    DBQuery.Fill(CustomerData) 
    Catch dbEX As DataException 

    End Try 

    CustomerTable = CustomerData.Tables( "Customers ") 

    If (Not (WebBrowser1.Document Is Nothing)) Then

  • 相关阅读:
    Spring Boot(二十):使用spring-boot-admin对spring-boot服务进行监控
    spring Boot(十九):使用Spring Boot Actuator监控应用
    Spring Boot(十八):使用Spring Boot集成FastDFS
    Spring Boot(十七):使用Spring Boot上传文件
    Spring Boot(十六):使用Jenkins部署Spring Boot
    Spring Boot(十五):spring boot+jpa+thymeleaf增删改查示例
    Spring Boot(十四):spring boot整合shiro-登录认证和权限管理
    ubuntu18.04使用vscode报pylint is not install错误
    处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“Manag
    在SQL Server中,为何都建议禁止 VIA 协议,VIA协议具体内容是什么?
  • 原文地址:https://www.cnblogs.com/zjw520/p/3014817.html
Copyright © 2011-2022 走看看