Type.IsNotPublic Property
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Gets a value indicating whether the Type is not declared public.
Assembly: mscorlib (in mscorlib.dll)
Property Value
Type: System.Booleantrue if the Type is not declared public and is not a nested type; otherwise, false.
Do not use with nested types; use IsNestedPublic instead.
If the current Type represents a type parameter of a generic type, this property returns false.
TypeAttributes.VisibilityMask selects the visibility attributes.
This example shows the use of IsNotPublic to get the visibility of the type.
Note: |
|---|
To run this example, see Building examples that have static TextBlock controls for Windows Phone 8. |
Imports System.IO Imports System.Reflection Class Example Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock) outputBlock.Text &= ControlChars.Cr + "Reflection.MemberInfo" & vbCrLf 'Get the Type and MemberInfo. Dim MyType As Type = Type.GetType("System.IO.File") Dim Mymemberinfoarray As MemberInfo() = MyType.GetMembers() 'Get and display the DeclaringType method. outputBlock.Text &= String.Format(ControlChars.Cr + "There are {0} members in {1}.", _ Mymemberinfoarray.Length, MyType.FullName) & vbCrLf outputBlock.Text &= String.Format("Is {0} nonpublic? {1}", MyType.FullName, _ MyType.IsNotPublic.ToString()) & vbCrLf End Sub End Class
This code produces the following output:
There are 27 members in System.IO.File. Is System.IO.File public? False
The following code example demonstrates why you cannot use IsPublic and IsNotPublic for nested classes.
For nested classes, ignore the results of IsPublic and IsNotPublic and pay attention only to the results of IsNestedPublic and IsNestedPrivate. The reflection output for this code fragment would be as follows:
Class | IsNotPublic | IsPublic | IsNestedPublic | IsNestedPrivate |
|---|---|---|---|---|
A | FALSE | TRUE | FALSE | FALSE |
B | FALSE | FALSE | TRUE | FALSE |
C | FALSE | FALSE | FALSE | TRUE |
Note: