|
Language: VB7 Expertise: Intermediate
Jul 21, 2003
InvokeMethod - Invoking a method via reflection
' Invoke a method via reflection and return its result - return null if method
' doesn't exist or throws
' Note: requires Imports System.Reflection
'
' Example:
' Function GetCompleteName(ByVal firstName As String,
' ByVal lastName As String)
' Return lastName & ", " & firstName
' End Function
' ...
' MessageBox.Show(InvokeMethod(Me, "GetCompleteName", False, "Marco",
' "Bellinaso"))
Function InvokeMethod(ByVal obj As Object, ByVal methodName As String, _
ByVal throwIfError As Boolean, ByVal ParamArray args() As Object) As Object
Try
Return obj.GetType().InvokeMember(methodName, BindingFlags.Instance Or _
BindingFlags.InvokeMethod Or BindingFlags.Public, Nothing, obj, _
args)
Catch ex As Exception
If throwIfError Then Throw ex
End Try
' if method doesn't exists or throws
Return Nothing
End Function
Francesco Balena
|