public Nullable <float> GetFloat32Property(PropertyID propertyID) { PropertyContextRecord record = GetRecordByPropertyID(propertyID); if (record != null) { if (record.wPropType == PropertyTypeName.PtypFloating32) { byte[] bytes = LittleEndianConverter.GetBytes(record.dwValueHnid); return(LittleEndianConverter.ToFloat32(bytes, 0)); } else { throw new InvalidPropertyException("Unexpected PC data type found"); } } else { return(null); } }