Sdílet prostřednictvím


WebBrowser.Navigating Událost

Definice

Nastane před přechodem WebBrowser ovládacího prvku na nový dokument.

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 

Event Type

Příklady

Následující příklad kódu ukazuje, jak použít obslužnou rutinu Navigating pro událost zrušit navigaci, když formulář webové stránky nebyl vyplněn. Vlastnost Document slouží k určení, zda vstupní pole formuláře obsahuje hodnotu.

Tento příklad vyžaduje, aby formulář obsahoval volaný WebBrowserwebBrowser1 ovládací prvek a aby třída ComVisibleAttribute formuláře byla přístupná modelu COM.

Úplný příklad kódu, do kterého můžete vložit následující kód, najdete v tématu Postupy: Přidání funkcí webového prohlížeče do aplikace Windows Forms.

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

Poznámky

Ovládací WebBrowser prvek přejde na nový dokument pokaždé, když je nastavena jedna z následujících vlastností nebo je volána metoda:

Událost můžete zpracovat Navigating tak, aby se zrušila navigace, pokud nebyly splněny určité podmínky, například když uživatel formulář zcela nevyplnil. Chcete-li zrušit navigaci, nastavte Cancel vlastnost WebBrowserNavigatingEventArgs objektu předaného obslužné rutině události na true. Tento objekt můžete také použít k načtení adresy URL nového dokumentu prostřednictvím WebBrowserNavigatingEventArgs.Url vlastnosti. Pokud se nový dokument zobrazí v rámci webové stránky, můžete načíst název rámce prostřednictvím WebBrowserNavigatingEventArgs.TargetFrameName vlastnosti.

Navigated Zpracování události pro příjem oznámení, když WebBrowser ovládací prvek dokončí navigaci a začne načítat dokument v novém umístění. DocumentCompleted Zpracování události pro příjem oznámení, když WebBrowser ovládací prvek dokončí načtení nového dokumentu.

Další informace o zpracování událostí naleznete v tématu Zpracování a vyvolávání událostí.

Platí pro

Viz také