What is Handled in C #

4

I have seen in some codes the use of Handled being assigned as true and false of ComboBox event arguments - SelectionChanged, TextBox - LostFocus, Button - Click.

Would you like to know what it is for and what it modifies in the event or control?

Example

    private void cboNome_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {          
        e.Handled = true; 
    }
    
asked by anonymous 08.04.2015 / 20:39

1 answer

2

Handled definition according to the microsoft website:

  

Gets or sets a value that indicates whether the event was handled.

Example of using the handled control.

(It will determine if the user pressed a non-numeric key in the textbox and if so, cancels the KeyPress event using the Handled property)

 //Sinalizador booleano usado para determinar quando uma tecla  não numérica  é digitada.
    private bool nonNumberEntered = false;

    // Manipula o evento KeyDown para determinar o tipo de caractere digitado no controle.
    private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
    {
        // Inicializa a flag com false
        nonNumberEntered = false;

        //Determina se o numero pressionado é do conjunto superior do teclado
        if (e.KeyCode < Keys.D0 || e.KeyCode > Keys.D9)
        {
            // Determina se o numero pressionado é do keypad.
            if (e.KeyCode < Keys.NumPad0 || e.KeyCode > Keys.NumPad9)
            {
                // Determina se a tecla pressionada é backspace
                if(e.KeyCode != Keys.Back)
                {
                    // Um numero não numérico foi pressionado
                    // Seta a flag como true.
                    nonNumberEntered = true;
                }
            }
        }
        //Verifica se a tecla pressiona é shift
        if (Control.ModifierKeys == Keys.Shift) {
            nonNumberEntered = true;
        }
    }

 //Esse evento previne que caracteres digitados apos o evento KeyDown afetem o controle
    private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
    {
       // Verifca a flag que esta sendo definida no evento do KeyDown
        if (nonNumberEntered == true)
        {
            // Previne que caracteres não numéricos entrem no controle
            e.Handled = true;
        }
    }

For more details, see

- > link

- > link

- > link

    
08.04.2015 / 21:34