Partilhar via


HtmlElement.GotFocus Evento

Definição

Ocorre quando o elemento recebeu o foco de entrada do usuário.

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 

Tipo de evento

Exemplos

Salve o código HTML a seguir em um arquivo e carregue o arquivo em um WebBrowser controle em um projeto 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>  

O exemplo de código a seguir impede que o próximo INPUT elemento na ordem de tabulação receba o foco de entrada do usuário se o elemento anterior contiver menos de cinco caracteres. O exemplo requer que o arquivo HTML mencionado anteriormente seja carregado em uma instância do WebBrowser controle chamado 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

Comentários

Você não pode cancelar o comportamento padrão desse evento nem impedi-lo de borbulhar. Para remover o foco de um elemento, chame Focus em um elemento diferente de dentro do GotFocus evento.

Aplica-se a

Confira também