public override float GetHeight(MonoTouch.UIKit.UITableView tableView, MonoTouch.Foundation.NSIndexPath indexPath)
 {
     float margin = UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone ? 40f : 110f;
     SizeF size = new SizeF (tableView.Bounds.Width - margin, float.MaxValue);
     string c = Caption;
     // ensure the (single-line) Value will be rendered inside the cell
     if (String.IsNullOrEmpty (c) && !String.IsNullOrEmpty (Value))
         c = " ";
     return tableView.StringSize (c, _font, size, UILineBreakMode.WordWrap).Height + 10;
 }