public static void BindPropertyRows(this TableLayoutPanel panel, UserProfile profile)
 {
     foreach (Control control in panel.Controls)
     {
         if (control.Tag != null && control.Tag is PropertyControl.PropertyAndObject)
         {
             PropertyControl.PropertyAndObject pao = (PropertyControl.PropertyAndObject)control.Tag;
             if (pao.PropertyInfo.DeclaringType.IsAssignableFrom(profile.GetType()))
             {
                 pao.Object = profile;
             }
             else if (pao.PropertyInfo.DeclaringType.IsAssignableFrom(profile.Details.GetType()))
             {
                 pao.Object = profile.Details;
             }
         }
     }
     panel.RefreshPropertyRows();
 }