Share via


WebBrowser.Navigating Kejadian

Definisi

Terjadi sebelum WebBrowser kontrol menavigasi ke dokumen baru.

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 

Jenis Acara

Contoh

Contoh kode berikut menunjukkan cara menggunakan handler agar Navigating acara membatalkan navigasi saat formulir halaman Web belum diisi. Properti Document digunakan untuk menentukan apakah bidang input formulir berisi nilai.

Contoh ini mengharuskan formulir Anda berisi kontrol yang WebBrowser disebut webBrowser1 dan kelas formulir Anda memiliki ComVisibleAttribute membuatnya dapat diakses oleh COM.

Untuk contoh kode lengkap yang dapat Anda tempelkan kode berikut, lihat Cara: Menambahkan Kemampuan Browser Web ke Aplikasi Formulir Windows.

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

Keterangan

WebBrowser Kontrol menavigasi ke dokumen baru setiap kali salah satu properti berikut diatur atau metode dipanggil:

Anda dapat menangani Navigating peristiwa untuk membatalkan navigasi jika kondisi tertentu belum terpenuhi, misalnya, ketika pengguna belum sepenuhnya mengisi formulir. Untuk membatalkan navigasi, atur Cancel properti objek yang WebBrowserNavigatingEventArgs diteruskan ke penanganan aktivitas ke true. Anda juga dapat menggunakan objek ini untuk mengambil URL dokumen baru melalui WebBrowserNavigatingEventArgs.Url properti . Jika dokumen baru akan ditampilkan dalam bingkai halaman Web, Anda dapat mengambil nama bingkai melalui WebBrowserNavigatingEventArgs.TargetFrameName properti .

Navigated Tangani peristiwa untuk menerima pemberitahuan saat WebBrowser kontrol selesai navigasi dan telah mulai memuat dokumen di lokasi baru. DocumentCompleted Tangani peristiwa untuk menerima pemberitahuan ketika WebBrowser kontrol selesai memuat dokumen baru.

Untuk informasi selengkapnya tentang menangani peristiwa, lihat Menangani dan Menaikkan Peristiwa.

Berlaku untuk

Lihat juga