Compartir vía


WebBrowser.Navigating Evento

Definición

Se produce antes de que el control WebBrowser navegue hasta un nuevo documento.

public:
 event System::Windows::Forms::WebBrowserNavigatingEventHandler ^ Navigating;
public event System.Windows.Forms.WebBrowserNavigatingEventHandler Navigating;
public event System.Windows.Forms.WebBrowserNavigatingEventHandler? Navigating;
member this.Navigating : System.Windows.Forms.WebBrowserNavigatingEventHandler 
Public Custom Event Navigating As WebBrowserNavigatingEventHandler 
Public Event Navigating As WebBrowserNavigatingEventHandler 

Tipo de evento

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar un controlador para el evento para cancelar la Navigating navegación cuando no se ha rellenado un formulario de página web. La Document propiedad se usa para determinar si el campo de entrada del formulario contiene un valor.

En este ejemplo se requiere que el formulario contenga un WebBrowser control denominado webBrowser1 y que la clase de formulario tenga una ComVisibleAttribute clase de formulario para que sea accesible para COM.

Para obtener un ejemplo de código completo en el que puede pegar el código siguiente, vea How to: Add Web Browser Capabilities to a Windows Forms Application.

private void Form1_Load(object sender, EventArgs e)
{
    webBrowser1.DocumentText =
        "<html><body>Please enter your name:<br/>" +
        "<input type='text' name='userName'/><br/>" +
        "<a href='http://www.microsoft.com'>continue</a>" +
        "</body></html>";
    webBrowser1.Navigating += 
        new WebBrowserNavigatingEventHandler(webBrowser1_Navigating);
}

private void webBrowser1_Navigating(object sender, 
    WebBrowserNavigatingEventArgs e)
{
    System.Windows.Forms.HtmlDocument document =
        this.webBrowser1.Document;

    if (document != null && document.All["userName"] != null && 
        String.IsNullOrEmpty(
        document.All["userName"].GetAttribute("value")))
    {
        e.Cancel = true;
        System.Windows.Forms.MessageBox.Show(
            "You must enter your name before you can navigate to " +
            e.Url.ToString());
    }
}
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) _
    Handles Me.Load

    webBrowser1.DocumentText = _
        "<html><body>Please enter your name:<br/>" & _
        "<input type='text' name='userName'/><br/>" & _
        "<a href='http://www.microsoft.com'>continue</a>" & _
        "</body></html>"

End Sub

Private Sub webBrowser1_Navigating( _
    ByVal sender As Object, ByVal e As WebBrowserNavigatingEventArgs) _
    Handles webBrowser1.Navigating

    Dim document As System.Windows.Forms.HtmlDocument = _
        webBrowser1.Document
    If document IsNot Nothing And _
        document.All("userName") IsNot Nothing And _
        String.IsNullOrEmpty( _
        document.All("userName").GetAttribute("value")) Then

        e.Cancel = True
        MsgBox("You must enter your name before you can navigate to " & _
            e.Url.ToString())
    End If

End Sub

Comentarios

El WebBrowser control navega a un nuevo documento cada vez que se establece una de las siguientes propiedades o se llama a métodos:

Puede controlar el evento para cancelar la Navigating navegación si no se han cumplido ciertas condiciones, por ejemplo, cuando el usuario no ha rellenado completamente un formulario. Para cancelar la navegación, establezca la Cancel propiedad del WebBrowserNavigatingEventArgs objeto pasado al controlador de eventos en true. También puede usar este objeto para recuperar la dirección URL del nuevo documento a través de la WebBrowserNavigatingEventArgs.Url propiedad . Si el nuevo documento se mostrará en un marco de página web, puede recuperar el nombre del marco a través de la WebBrowserNavigatingEventArgs.TargetFrameName propiedad .

Controle el Navigated evento para recibir la notificación cuando el control finalice la WebBrowser navegación y haya comenzado a cargar el documento en la nueva ubicación. Controle el DocumentCompleted evento para recibir notificaciones cuando el WebBrowser control termine de cargar el nuevo documento.

Para obtener más información sobre el manejo de eventos, consulte controlar y provocar eventos.

Se aplica a

Consulte también