Procedura: accedere al Document Object Model HTML gestito

Aggiornamento: novembre 2007

È possibile accedere al Document Object Model (DOM) HTML da due tipi di applicazione:

  • Un'applicazione Windows Form (.exe) che contiene il controllo WebBrowser gestito. Le due tecnologie si completano a vicenda: il controllo WebBrowser visualizza la pagina e il DOM HTML rappresenta la struttura logica del documento.

  • Una classe UserControl Windows Form contenuta in Internet Explorer. È possibile accedere al DOM HTML che rappresenta la pagina in cui la classe UserControl è contenuta allo scopo di modificare la struttura del documento o aprire finestre di dialogo modali, tra varie altre possibilità.

Per accedere a un DOM da un'applicazione Windows Form

  1. Inserire un controllo WebBrowser nell'applicazione Windows Form e verificare la presenza dell'evento DocumentCompleted. Per informazioni dettagliate sull'inserimento di controlli e la verifica della presenza di eventi, vedere Utilizzo degli eventi.

  2. Recuperare l'oggetto HtmlDocument relativo alla pagina corrente accedendo alla proprietà Document del controllo WebBrowser.

Per accedere a un DOM da un UserControl contenuto in Internet Explorer

  1. Creare una classe derivata personalizzata della classe UserControl. Per ulteriori informazioni, vedere Procedura: modificare controlli compositi.

  2. Inserire il codice riportato di seguito nel gestore dell'evento Load della classe UserControl:

Private Sub UserControl1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    If (Me.Site IsNot Nothing) Then
        Dim Doc As HtmlDocument = CType(Me.Site.GetService(Type.GetType("System.Windows.Forms.HtmlDocument")), HtmlDocument)
    End If
End Sub
     HtmlDocument doc = null;

        private void UserControl1_Load(object sender, EventArgs e)
        {
            if (this.Site != null)
            {
                doc = (HtmlDocument)this.Site.GetService(typeof(HtmlDocument));
            }
        }

Programmazione efficiente

  1. Durante l'utilizzo del DOM mediante il controllo WebBrowser, è opportuno attendere sempre il verificarsi dell'evento DocumentCompleted prima di tentare di accedere alla proprietà Document del controllo WebBrowser. Poiché l'evento DocumentCompleted viene generato dopo il caricamento dell'intero documento, se si utilizza il DOM prima di tale momento si rischia di generare un'eccezione in fase di esecuzione nell'applicazione.

Sicurezza

  1. Per poter accedere al DOM HTML gestito, l'applicazione o la classe UserControl richiedono l'attendibilità totale. Se si sviluppa un'applicazione Windows Form utilizzando ClickOnce, è possibile richiedere l'attendibilità totale mediante elevazione delle autorizzazioni o distribuzione di applicazioni attendibili. Per ulteriori informazioni, vedere Cenni preliminari sulla distribuzione ClickOnce e Distribuzione e sicurezza ClickOnce.

Vedere anche

Altre risorse

Utilizzare il Document Object Model HTML gestito