Export (0) Print
Expand All

MethodBase::IsPublic Property

Gets a value indicating whether this is a public method.

Namespace:  System.Reflection
Assemblies:   mscorlib (in mscorlib.dll)
  System.Reflection (in System.Reflection.dll)

virtual property bool IsPublic {
	bool get () sealed;

Property Value

Type: System::Boolean
true if this method is public; otherwise, false.

To get the MethodBase, first get the type. From the type, get the method. From the method, get the MethodBase. If the MethodBase or constructor is other than public, it is protected and cannot be readily accessed. To access a non-public method, set the BindingFlags mask to NonPublic in GetMethod.

The following example uses the IsPublic property to display a message that indicates whether the specified method is public.

int main()
   Console::WriteLine( "\nReflection.MethodBase" );

   //Get the MethodBase of a method. 
   //Get the type
   Type^ MyType = Type::GetType( "System.MulticastDelegate" );

   //Get and display the method
   MethodBase^ Mymethodbase = MyType->GetMethod( "RemoveImpl", static_cast<BindingFlags>(BindingFlags::NonPublic | BindingFlags::Instance) );
   Console::Write( "\nMymethodbase = {0}", Mymethodbase );
   bool Myispublic = Mymethodbase->IsPublic;
   if ( Myispublic )
      Console::Write( "\nMymethodbase is a public method" );
      Console::Write( "\nMymethodbase is not a public method" );

   return 0;

Produces the following output

Mymethodbase = System.Delegate RemoveImpl (System.Delegate)
Mymethodbase is not a public method

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8
© 2015 Microsoft