WebBrowser.Navigating Событие

Определение

Происходит перед переходом элемента управления WebBrowser в новый документ.Occurs before the WebBrowser control navigates to a new document.

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

Тип события

WebBrowserNavigatingEventHandler

Примеры

В следующем примере кода показано, как с помощью обработчика Navigating события отменить навигацию, если форма веб-страницы не заполнена.The following code example demonstrates how to use a handler for the Navigating event to cancel navigation when a Web page form has not been filled in. DocumentСвойство используется для определения того, содержит ли поле ввода значение.The Document property is used to determine whether the form input field contains a value.

В этом примере требуется, чтобы форма содержала WebBrowser элемент управления, webBrowser1 а класс формы стал ComVisibleAttribute доступным для com.This example requires that your form contains a WebBrowser control called webBrowser1 and that your form class has a ComVisibleAttribute making it accessible to COM.

Полный пример кода, в который можно вставить следующий код, см. в разделе как добавить возможности веб-браузера в Windows Forms приложение.For a complete code example that you can paste the following code into, see 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

Комментарии

WebBrowserЭлемент управления переходит к новому документу каждый раз, когда задано одно из следующих свойств или вызывается метод:The WebBrowser control navigates to a new document whenever one of the following properties is set or methods is called:

NavigatingСобытие можно обменять, чтобы отменить навигацию, если не выполнены определенные условия, например когда пользователь не заполнил форму.You can handle the Navigating event to cancel navigation if certain conditions have not been met, for example, when the user has not completely filled out a form. Чтобы отменить навигацию, установите Cancel свойство объекта, WebBrowserNavigatingEventArgs передаваемое обработчику событий, в значение true .To cancel navigation, set the Cancel property of the WebBrowserNavigatingEventArgs object passed to the event handler to true. Этот объект также можно использовать для получения URL-адреса нового документа через WebBrowserNavigatingEventArgs.Url свойство.You can also use this object to retrieve the URL of the new document through the WebBrowserNavigatingEventArgs.Url property. Если новый документ будет отображаться в кадре веб-страницы, можно получить имя рамки через WebBrowserNavigatingEventArgs.TargetFrameName свойство.If the new document will be displayed in a Web page frame, you can retrieve the name of the frame through the WebBrowserNavigatingEventArgs.TargetFrameName property.

Обрабатывает Navigated событие, чтобы получить уведомление, когда WebBrowser элемент управления завершает навигацию и начал загрузку документа в новом расположении.Handle the Navigated event to receive notification when the WebBrowser control finishes navigation and has begun loading the document at the new location. Обрабатывает DocumentCompleted событие, чтобы получить уведомление, когда WebBrowser элемент управления закончит загрузку нового документа.Handle the DocumentCompleted event to receive notification when the WebBrowser control finishes loading the new document.

Дополнительные сведения об обработке событий см. в разделе обработка и вызов событий.For more information about handling events, see Handling and Raising Events.

Применяется к

См. также раздел