WebBrowser.Navigating Událost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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í.