' Read a property via reflection or return a default value' Example: MessageBox.Show(GetProperty(Button1, "Text", ""))Function GetProperty(ByVal obj As Object, ByVal propertyName As String, _ ByVal defaultValue As Object) As Object Try Dim pi As System.Reflection.PropertyInfo = obj.GetType().GetProperty _ (propertyName) 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


Electric Vehicle Battery Breakthrough
The prices of lithium-ion batteries have seen a considerable reduction, with the cost per kilowatt-hour dipping under $100 for the first occasion in two years,