Type.GetMethod Method (String, BindingFlags)
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Searches for the specified method, using the specified binding constraints.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Function GetMethod ( _
name As String, _
bindingAttr As BindingFlags _
) As MethodInfo
public MethodInfo GetMethod(
string name,
BindingFlags bindingAttr
)
Parameters
- name
Type: System.String
The String containing the name of the method to get.
- bindingAttr
Type: System.Reflection.BindingFlags
A bitmask comprised of one or more BindingFlags that specify how the search is conducted.
-or-
Zero, to return nulla null reference (Nothing in Visual Basic).
Return Value
Type: System.Reflection.MethodInfo
A MethodInfo object representing the method that matches the specified requirements, if found; otherwise, nulla null reference (Nothing in Visual Basic).
Implements
Exceptions
Exception | Condition |
---|---|
AmbiguousMatchException | More than one method is found with the specified name and matching the specified binding constraints. |
ArgumentNullException | name is nulla null reference (Nothing in Visual Basic). |
Remarks
The following BindingFlags filter flags can be used to define which methods to include in the search:
You must specify either BindingFlags.Instance or BindingFlags.Static in order to get a return.
Specify BindingFlags.Public to include public methods in the search.
Specify BindingFlags.NonPublic to include non-public methods (that is, private and protected methods) in the search.
Specify BindingFlags.FlattenHierarchy to include public and protected static members up the hierarchy; private static members in inherited classes are not included.
The following BindingFlags modifier flags can be used to change how the search works:
BindingFlags.IgnoreCase to ignore the case of name.
BindingFlags.DeclaredOnly to search only the methods declared on the Type, not methods that were simply inherited.
See System.Reflection.BindingFlags for more information.
Note: |
---|
You cannot omit parameters when looking up constructors and methods. You can only omit parameters when invoking. |
If the current T:System.Type represents a constructed generic type, this method returns the MethodInfo with the type parameters replaced by the appropriate type arguments.
If the current Type represents a type parameter in the definition of a generic type or generic method, this method searches the methods of the class constraint, or the methods of Object if there is no class constraint.
Note: |
---|
For generic methods, do not include the type arguments in name. For example, the C# code GetMember("MyMethod<int>") searches for a member with the text name "MyMethod<int>", rather than for a method named MyMethod that has one generic argument of type int. |
Examples
The following example gets the method that matches the specified binding flags.
Note: |
---|
To run this example, see Building Examples That Use a Demo Method and a TextBlock Control. |
Imports System.Reflection
Class Example
' Method to get:
Public Sub MethodA()
End Sub
Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
' Get MethodA()
Dim mInfo As MethodInfo = GetType(Example).GetMethod("MethodA", _
BindingFlags.Public Or BindingFlags.Instance)
outputBlock.Text += String.Format("Found method: {0}", mInfo) & vbCrLf
End Sub
End Class
using System;
using System.Reflection;
class Example
{
// Method to get:
public void MethodA() { }
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
// Get MethodA()
MethodInfo mInfo = typeof(Example).GetMethod("MethodA",
BindingFlags.Public | BindingFlags.Instance);
outputBlock.Text += String.Format("Found method: {0}", mInfo) + "\n";
}
}
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
See Also