devxlogo

GetField – Retrieving the value of a public field via reflection

GetField – Retrieving the value of a public field via reflection

' Return the value of the public field with the specified name,'  defined inside the obj object' Note: requires Imports System.Reflection'' Example:'   Public TestField As String = "hello"'   ...'   MessageBox.Show(GetField(Me, "TestField", ""))Function GetField(ByVal obj As Object, ByVal fieldName As String, _    ByVal defaultValue As Object) As Object    Try        ' try with a field first        Dim fi As FieldInfo = obj.GetType().GetField(fieldName, _            BindingFlags.Instance Or BindingFlags.Public Or _            BindingFlags.NonPublic)        If Not fi Is Nothing Then            Return fi.GetValue(obj)        End If        ' else, try with a property (VB implements many form fields as         ' properties)        Dim pi As PropertyInfo = obj.GetType().GetProperty(fieldName, _            BindingFlags.Instance Or BindingFlags.Public Or _            BindingFlags.NonPublic)        If Not pi Is Nothing Then            Return pi.GetValue(obj, Nothing)        End If    Catch    End Try    ' if property doesn't exist or throws    Return defaultValueEnd Function

See also  Professionalism Starts in Your Inbox: Keys to Presenting Your Best Self in Email
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist