title: Firemonkey livebindings custom Grid columns
body: <p>I've trying to add some custom columns to a TGrid, for example column that will consist of TCalendarEdit's and livebind it to DB.<br>
  I came out with two ways of how to implement something like this.  </p>
  
  <ol>
  <li><p>Put CalendarEdit in all rows.<br>
  <strong>Problem is</strong>: I can create custom TCalendarEdit column,<br>
  <code>TDateColumn = class(TColumn)<br>
  protected<br>
    function CreateCellControl: TStyledControl; override;<br>
  end;<br>
  function TDateColumn.CreateCellControl: TStyledControl;<br>
  begin<br>
    Result := TDateCell.Create(grid);<br>
    Result.Parent := grid;<br>
  end;</code><br>
  can put it in Grid,<br>
  <code>procedure TForm1.FormCreate(Sender: TObject);<br>
  var<br>
  cec: TDateColumn;<br>
  begin<br>
  cec:=TDateColumn.Create(grid1);<br>
  grid1.AddObject(cec);<br>
  end;</code><br>
  but then i livebind it to dataset 
  <code>LinkGridToDataSource1.Columns.Items[LinkGridToDataSource1.Columns.Count-1].MemberName:='date';</code><br>
  it drops to default string column view!</p></li>
  <li><p>Draw a control over Grid cell then i click on and destroy it then i click on any other place on Grid (and write it's data to Grid).<br>
  <strong>Problem is</strong>: How can i get coordinates and size of cell OnClick?  </p></li>
  </ol>
  
  <p>Thank you.</p>