Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Type.IsNotPublic, propriété

Obtient une valeur indiquant si Type n'est pas déclaré public.

Espace de noms :  System
Assembly :  mscorlib (dans mscorlib.dll)
public bool IsNotPublic { get; }

Valeur de propriété

Type : System.Boolean
true si Type n'est pas déclaré public et n'est pas un type imbriqué ; sinon, false.

Implémentations

_Type.IsNotPublic

Ne l'utilisez pas avec les types imbriqués ; utilisez plutôt IsNestedPublic.

Si le Type actuel représente un paramètre de type d'un type générique, cette propriété retourne la valeur false.

TypeAttributes.VisibilityMask sélectionne les attributs de visibilité.

Cet exemple illustre l'utilisation de IsNotPublic pour obtenir la visibilité du type.


using System;
using System.IO;
using System.Reflection;
class MyMemberInfo 
{ 
    public static void Main(string[] args) 
    { 
        Console.WriteLine ("\nReflection.MemberInfo");
        //Get the Type and MemberInfo.
        Type MyType =Type.GetType("System.IO.File");
        MemberInfo[] Mymemberinfoarray = MyType.GetMembers();
        //Get and display the DeclaringType method.
        Console.WriteLine("\nThere are {0} members in {1}.", Mymemberinfoarray.Length, MyType.FullName);
        Console.WriteLine("Is {0} nonpublic? {1}", MyType.FullName, MyType.IsNotPublic.ToString());
    }
}


Ce code génère la sortie suivante :

Il y a 27 membres dans System.IO.File.

System.IO.File est-il public ? False

L'exemple de code suivant montre pourquoi vous ne pouvez pas utiliser IsPublic et IsNotPublic pour les classes imbriquées.


public class A 
{
    public class B { }
    private class C { }
}


Pour les classes imbriquées, ignorez les résultats de IsPublic et IsNotPublic ; intéressez-vous uniquement aux résultats de IsNestedPublic et IsNestedPrivate. Le résultat de réflexion pour ce fragment de code se présente comme suit :

Classe

IsNotPublic

IsPublic

IsNestedPublic

IsNestedPrivate

A

FALSE

TRUE

FALSE

FALSE

B

FALSE

FALSE

TRUE

FALSE

C

FALSE

FALSE

FALSE

TRUE

.NET Framework

Pris en charge dans : 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Pris en charge dans :

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ