Udostępnij za pośrednictwem


HtmlElement.GotFocus Zdarzenie

Definicja

Występuje, gdy element otrzymał fokus danych wejściowych użytkownika.

public:
 event System::Windows::Forms::HtmlElementEventHandler ^ GotFocus;
public event System.Windows.Forms.HtmlElementEventHandler GotFocus;
public event System.Windows.Forms.HtmlElementEventHandler? GotFocus;
member this.GotFocus : System.Windows.Forms.HtmlElementEventHandler 
Public Custom Event GotFocus As HtmlElementEventHandler 

Typ zdarzenia

Przykłady

Zapisz następujący kod HTML w pliku i załaduj go do WebBrowser kontrolki w projekcie Windows Forms.

<HTML>  
    <BODY>  
        <FORM name="form1">  
            <INPUT type="text" size=20 name="text1">  
            <INPUT type="text" size=20 name="text2">  
            <INPUT type="text" size=20 name="text3">  
        </FORM>  
    </BODY>  
</HTML>  

Poniższy przykład kodu uniemożliwia następnemu INPUT elementowi w kolejności tabulacji odbieranie fokusu danych wejściowych użytkownika, jeśli poprzedni element zawiera mniej niż pięć znaków. Przykład wymaga załadowania wcześniej wymienionego pliku HTML do wystąpienia kontrolki WebBrowser o nazwie WebBrowser1.

HtmlElement targetFormElement;

private void HandleFormFocus()
{
    if (webBrowser1.Document != null)
    {
        HtmlDocument doc = webBrowser1.Document;
        if (doc.Forms.Count > 0)
        {
            HtmlElement targetForm = doc.Forms[0];
            HtmlElementCollection searchCollection = targetForm.All.GetElementsByName("text1");
            if (searchCollection.Count == 1)
            {
                targetFormElement = searchCollection[0];
            }
        }
    }
}

private void TargetFormElement_Focus(Object sender, HtmlElementEventArgs e)
{
    HtmlElement textElement = e.FromElement;
    String elementText = textElement.GetAttribute("value");

    // Check that this value is at least five characters long.
    if (elementText.Length < 5)
    {
        e.ReturnValue = true;
        MessageBox.Show("The entry in the current field must be at least five characters long.");
    }
}
Dim WithEvents TargetFormElement As HtmlElement

Private Sub HandleFormFocus()
    If (WebBrowser1.Document IsNot Nothing) Then
        With WebBrowser1.Document
            If (.Forms.Count > 0) Then
                Dim TargetForm As HtmlElement = .Forms(0)
                Dim SearchCollection As HtmlElementCollection = TargetForm.All.GetElementsByName("text1")
                If (SearchCollection.Count = 1) Then
                    TargetFormElement = SearchCollection(0)
                End If
            End If
        End With
    End If
End Sub

Private Sub TargetFormElement_Focus(ByVal sender As Object, ByVal e As HtmlElementEventArgs)
    Dim TextElement As HtmlElement = e.FromElement
    Dim ElementText As String = TextElement.GetAttribute("value")

    ' Check that this value is at least five characters long.
    If (ElementText.Length < 5) Then
        e.ReturnValue = True
        MessageBox.Show("The entry in the current field must be at least five characters long.")
    End If
End Sub

Uwagi

Nie można ani anulować domyślnego zachowania tego zdarzenia, ani uniemożliwić mu bubbling. Aby usunąć fokus z elementu, wywołaj Focus inny element z GotFocus poziomu zdarzenia.

Dotyczy

Zobacz też