if(c is TFrom)
{
// Do Stuff
}
ou si vous prévoyez d'utiliser c
comme TForm
, utilisez l'exemple suivant:
var tForm = c as TForm;
if(tForm != null)
{
// c is of type TForm
}
Le deuxième exemple a seulement besoin de vérifier si c
est de type TForm
une fois. Oùest si vous vérifiez si voir si c
est de type TForm
puis le cast, le CLR subit une vérification supplémentaire. Voici un reference.
Edit: Volée Jon Skeet
Si vous voulez vous assurer c
est de TForm
et non une classe héritant de TForm
, puis utilisez
if(c.GetType() == typeof(TForm))
{
// Do stuff cause c is of type TForm and nothing else
}
Wow, qui vous a dit de le faire de cette façon ?! Tant d'étapes supplémentaires! –
Je suis principalement un développeur Java, dans l'équipe que je code à peine en C#. – Lennie
J'espère que vous ne le ferez pas non plus dans Java de cette façon. Les instances 'instanceof' de Java et' is 'de C# sont de bien meilleures façons de le faire. – Powerlord