private void CopyStringTagTo(BitmapMetadata dst, string dstPropertyName, Metadata src, ExifTagID srcTagID) { PropertyItem[] pis = src.GetExifValues(srcTagID); if (pis.Length > 0) { PropertyInfo pi = dst.GetType().GetProperty(dstPropertyName); string piValue = Exif.DecodeAsciiValue(pis[0]); try { pi.SetValue(dst, piValue, null); } catch (Exception) { // *shrug* } } }