web-dev-qa-db-fra.com

Vérifiez si l'objet n'est PAS de type (! = Équivalent pour "IS") - C #

Cela fonctionne très bien:

    protected void txtTest_Load(object sender, EventArgs e)
    {
        if (sender is TextBox) {...}

    }

Existe-t-il un moyen de vérifier si l'expéditeur n'est PAS un TextBox, une sorte d'équivalent de! = Pour "is"?

Veuillez ne pas suggérer de déplacer la logique vers ELSE {} :)

62
roman m

C'est une façon:

if (!(sender is TextBox)) {...}
153
Jon Tackabury

Ne pourriez-vous pas également faire la "vieille" manière plus verbeuse, avant le mot clé is:

if (sender.GetType() != typeof(TextBox)) { // ... }
7
Wayne Molina

Deux façons bien connues de le faire sont:

1) En utilisant IS opérateur:

if (!(sender is TextBox)) {...}

2) Utilisation de l'opérateur AS (utile si vous devez également travailler avec l'instance textBox):

var textBox = sender as TextBox;  
if (sender == null) {...}
2
John-Philip