WebBrowser.Navigating Evento
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.