Aanmelden met Microsoft
Meld u aan of maak een account.
Hallo,
Selecteer een ander account.
U hebt meerdere accounts
Kies het account waarmee u zich wilt aanmelden.

IN DEZE TAAK

Samenvatting

Visual Basic .NET-toepassingen die host zijn van het besturingselement WebBrowser kunnen verwerken van de gebeurtenis NewWindow2 om een window.open oproep die door het script wordt gegenereerd. Het is echter niet direct duidelijk hoe uw toepassing de waarden voor breedte en hoogte die worden doorgegeven aan het argument van de functies van window.open zodat de host van de WebBrowser kunt het formaat van het venster correct kunt verkrijgen. Dit artikel wordt beschreven hoe de nieuwe breedte en hoogte van het besturingselement WebBrowser verkrijgen en hoe dienovereenkomstig het formaat van het formulier.

Vereisten

U hebt de volgende hardware, software, netwerkinfrastructuur, vaardigheden, kennis en service packs nodig:

  • Microsoft Visual Studio .NET

  • Microsoft Internet Explorer 5.5 servicepack 2 of hoger

De steekproef

Deze sectie beschrijft het WebBrowser-besturingselement in een Visual Basic .NET-toepassing onderbrengen, het afhandelen van de gebeurtenis NewWindow2 van het besturingselement WebBrowser en het afhandelen van de WindowSetWidth en de WindowSetHeight gebeurtenissen aan het formaat van uw toepassing.

  1. Maak een nieuw Windows application in Visual Basic als volgt:

    1. Start Visual Studio .NET.

    2. Wijs Nieuwaan in het menu bestand en klik vervolgens op Project

    3. Klik onder Project Typesop Visual Basic-projecten. Klik onder sjablonenop Windows-toepassing.

  2. In de werkset, klik op Algemeen, klik met de rechtermuisknop in de werkset en klik op Customize Toolbox.

  3. Klik op het tabblad COM-onderdelen het selectievakje Microsoft Web-Browser en klik op OK.

  4. Dubbelklik in het venster Explorer in de werkset.

  5. Een knop en een TextBox -besturingselement aan uw formulier toevoegen.

  6. Dubbelklik op de knop om de uitvoering van de gebeurtenis onClick van de knop weer in het venster Code en voeg de volgende code toe:

        Private Sub Button1_Click(ByVal sender As System.Object, _        ByVal e As System.EventArgs) Handles Button1.Click            AxWebBrowser1.Navigate(TextBox1.Text)    End Sub

    Deze code kunt u zoeken naar de URL die u in het tekstvak opgeeft.

  7. Voeg de volgende code om de handlerfunctie schrijven voor NewWindow2:

        Private Sub AxWebBrowser1_NewWindow2(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_NewWindow2Event) _        Handles AxWebBrowser1.NewWindow2            Dim frmWB As Form1            frmWB = New Form1()            frmWB.AxWebBrowser1.RegisterAsBrowser = True            e.ppDisp = frmWB.AxWebBrowser1.Application            frmWB.Visible = True    End Sub
  8. Voeg de volgende code om de handlerfunctie schrijven voor WindowSetHeight:

        Private Sub AxWebBrowser1_WindowSetHeight(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_WindowSetHeightEvent) _        Handles AxWebBrowser1.WindowSetHeight            Dim heightDiff As Integer            heightDiff = Me.Height - Me.AxWebBrowser1.Height            Me.Height = heightDiff + e.height    End Sub
  9. Voeg de volgende code om de handlerfunctie schrijven voor WindowSetWidth:

        Private Sub AxWebBrowser1_WindowSetWidth(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_WindowSetWidthEvent) _        Handles AxWebBrowser1.WindowSetWidth            Dim widthDiff As Integer            widthDiff = Me.Width - Me.AxWebBrowser1.Width            Me.Width = widthDiff + e.width    End Sub

Voorbeeld van de volledige Code

Public Class Form1    Inherits System.Windows.Forms.Form#Region " Windows Form Designer generated code "    'Omitted#End Region    Private Sub Button1_Click(ByVal sender As System.Object, _        ByVal e As System.EventArgs) Handles Button1.Click            AxWebBrowser1.Navigate(TextBox1.Text)    End Sub    Private Sub AxWebBrowser1_NewWindow2(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_NewWindow2Event) _        Handles AxWebBrowser1.NewWindow2            'MessageBox.Show(AxWebBrowser1.Height & ":" & AxWebBrowser1.Width)            'MessageBox.Show(doc.body.innerHTML)            Dim frmWB As Form1            frmWB = New Form1()            frmWB.AxWebBrowser1.RegisterAsBrowser = True            'frmWB.AxWebBrowser1.Navigate2("about:blank")            e.ppDisp = frmWB.AxWebBrowser1.Application            frmWB.Visible = True            'MessageBox.Show(frmWB.AxWebBrowser1.Height & ":" & frmWB.AxWebBrowser1.Width)    End Sub    Private Sub AxWebBrowser1_WindowSetHeight(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_WindowSetHeightEvent) _        Handles AxWebBrowser1.WindowSetHeight            'MessageBox.Show("In SetHeight" & Me.Height & ":" & e.height)            Dim heightDiff As Integer            heightDiff = Me.Height - Me.AxWebBrowser1.Height            Me.Height = heightDiff + e.height    End Sub    Private Sub AxWebBrowser1_WindowSetWidth(ByVal sender As Object, _        ByVal e As AxSHDocVw.DWebBrowserEvents2_WindowSetWidthEvent) _        Handles AxWebBrowser1.WindowSetWidth            'MessageBox.Show("In SetWidth" & Me.Width & ":" & e.width)            Dim widthDiff As Integer            widthDiff = Me.Width - Me.AxWebBrowser1.Width            Me.Width = widthDiff + e.width    End SubEnd Class

Controleer of het werkt

  1. De toepassing maakt.

  2. Open Kladblok. Maak een nieuw bestand met de naam Test.htm en voeg de volgende code toe:

    <HTML><HEAD><META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0"><TITLE></TITLE><script>function openWin(){var win;win = window.open("http://www.microsoft.com","blah","width=600, height=600");}</script></HEAD><BODY><button onClick=openWin()>Open Window</button></BODY></HTML>
  3. Test.htm opslaan op de webserver.

  4. De toepassing wordt uitgevoerd.

  5. Blader naar de pagina Test.htm en klik vervolgens op de knop. U ziet dat de Corporate website geopend in een nieuw exemplaar van de toepassing. Het formulier wordt gewijzigd op basis van de functies die u met het aanroepen van window.opendoorgegeven.

Verwijzingen

Voor meer informatie klikt u op de volgende artikelnummers om de artikelen in de Microsoft Knowledge Base:

311284 procedure: documentgebeurtenissen in Visual Basic .NET-toepassingen verwerken

259963 procedure: ophalen breedte en hoogte die Window.open binnen de Visual C++-WebBrowser HostVerwijzen naar de volgende Microsoft-website voor meer informatie over het besturingselement WebBrowser, alsmede de methoden, eigenschappen en gebeurtenissen die worden getoond:

Het besturingselement WebBrowser: Referentie voor ontwikkelaars van Visual Basic-http://msdn2.microsoft.com/en-us/library/Aa752043.aspxGa naar de volgende Microsoft-websites voor meer informatie over het ontwerpen van weboplossingen voor Microsoft Internet Explorer:

http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.

Community's helpen u vragen te stellen en te beantwoorden, feedback te geven en te leren van experts met uitgebreide kennis.

Was deze informatie nuttig?

Hoe tevreden bent u met de taalkwaliteit?
Wat heeft uw ervaring beïnvloed?
Als u op Verzenden klikt, wordt uw feedback gebruikt om producten en services van Microsoft te verbeteren. Uw IT-beheerder kan deze gegevens verzamelen. Privacyverklaring.

Hartelijk dank voor uw feedback.

×