WebBrowserNavigatingEventArgs (Clase) (System.Windows.Forms)

Cambiar vista:
Sin script
Biblioteca de clases de .NET Framework
WebBrowserNavigatingEventArgs (Clase)

Actualización: noviembre 2007

Proporciona datos para el evento WebBrowser.Navigating.

Espacio de nombres:  System.Windows.Forms
Ensamblado:  System.Windows.Forms (en System.Windows.Forms.dll)
Sintaxis

Visual Basic (Declaración)
Public Class WebBrowserNavigatingEventArgs _
	Inherits CancelEventArgs
Visual Basic (Uso)
Dim instance As WebBrowserNavigatingEventArgs
C#
public class WebBrowserNavigatingEventArgs : CancelEventArgs
Visual C++
public ref class WebBrowserNavigatingEventArgs : public CancelEventArgs
J#
public class WebBrowserNavigatingEventArgs extends CancelEventArgs
JScript
public class WebBrowserNavigatingEventArgs extends CancelEventArgs
Comentarios

El evento WebBrowser.Navigating aparece antes de que el control WebBrowser se desplace a un nuevo documento. Puede controlar este evento para cancelar el desplazamiento antes de que comience si no se han cumplido ciertas condiciones, por ejemplo, si el usuario no ha rellenado completamente un formulario. Para ello, establezca la propiedad Cancel del objeto WebBrowserNavigatingEventArgs pasada al controlador de eventos a true. También puede utilizar este objeto para recuperar la ubicación del nuevo documento mediante la propiedad Url. Si el nuevo documento se va a mostrar en un marco de la página Web, puede recuperar el nombre del marco mediante la propiedad TargetFrameName.

Ejemplos

El ejemplo de código siguiente muestra cómo utilizar un controlador para el evento WebBrowser.Navigating para cancelar el desplazamiento si el formulario de página Web no se ha rellenado. La propiedad WebBrowser.Document se utiliza para determinar si el campo de entrada de formulario contiene un valor. En este ejemplo se requiere que el formulario contenga un control WebBrowser denominado webBrowser1.

Visual Basic
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


C#
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());
    }
}


Jerarquía de herencia

System.Object
  System.EventArgs
    System.ComponentModel.CancelEventArgs
      System.Windows.Forms.WebBrowserNavigatingEventArgs
Seguridad para subprocesos

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
Plataformas

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Información de versión

.NET Framework

Compatible con: 3.5, 3.0, 2.0

.NET Compact Framework

Compatible con: 3.5, 2.0
Vea también

Referencia

Url