title: What's the best way to add progressbar to cxGrid column
body: <p>I am adding progressbar to each row of my first grid's banded tableview column !
  The way I do it => I put 4 progressbars on my form and on 
  <code>btvArrProgGetProperties(TcxCustomGridTableItem *Sender, TcxCustomGridRecord *ARecord,
            TcxCustomEditProperties *&amp;AProperties)</code> assigning properties to a specific row by changing putted progressbar properties.
  here is my code</p>
  
  <pre><code>void __fastcall TfMain::btvArrProgGetProperties(TcxCustomGridTableItem *Sender, TcxCustomGridRecord *ARecord,
            TcxCustomEditProperties *&amp;AProperties)
      {
            if ( StrToInt(ARecord-&gt;Values[ARecord-&gt;RecordIndex,1])==4 ){
              ARecord-&gt;Values[ARecord-&gt;RecordIndex,0]=100;
              AProperties=pCancel-&gt;Properties;
            }
            else
              if ( StrToInt(ARecord-&gt;Values[ARecord-&gt;RecordIndex,1])==2) {
                  ARecord-&gt;Values[ARecord-&gt;RecordIndex,0]=100;
                  AProperties=pDep-&gt;Properties;
            }
                else  {
  
                    if (StrToInt(ARecord-&gt;Values[ARecord-&gt;RecordIndex,1])==1) {
                          if ((ARecord-&gt;Values[ARecord-&gt;RecordIndex,7])!=0 &amp;&amp; (ARecord-&gt;Values[ARecord-&gt;RecordIndex,12])!=0) {
                              //now time
                              nwTm=Now().FormatString("hh:mm:ss");
                              //get dep time
                              dpTm=StrToDateTime(ARecord-&gt;Values[ARecord-&gt;RecordIndex,7]);
                              dpTm.DecodeTime(&amp;dpH,&amp;dpM,&amp;dpS,&amp;dpMS);
                              //get reg time
                              rgTm=StrToDateTime(ARecord-&gt;Values[ARecord-&gt;RecordIndex,12]);
                              //find difference between dep and reg
                              dif=(1.0 + Double(dpTm)-Double(rgTm));
                              //get difference hours and mins
                              dif.DecodeTime(&amp;difH,&amp;difM,&amp;difS,&amp;difMS);
                              //diff between dep and reg in seconds
                              pReg-&gt;Properties-&gt;Max=difH*3600+difM*60+difS;
                              nwTm=Now().FormatString("hh:mm:ss");
                              nwTm.DecodeTime(&amp;nwH,&amp;nwM,&amp;nwS,&amp;nwMS);
  
                              if ((dpH&gt;nwH) || ((dpH&gt;nwH) &amp;&amp; (dpM&gt;=nwM ||dpM&lt;=nwM)) || (dpH==nwH &amp;&amp; dpM&gt;nwM)  ) {
                                  fltRem =(1.0 + Double(dpTm)-Double(nwTm));
                                  fltRem.DecodeTime(&amp;remH,&amp;remM,&amp;remS,&amp;remMS);
                                  _result=remH*3600+remM*60+remS;
  
  
                                  pReg-&gt;Properties-&gt;Text=getTimeBySecs(_result);
                                  ARecord-&gt;Values[ARecord-&gt;RecordIndex,0]=pReg-&gt;Properties-&gt;Max-_result;
                                  pReg-&gt;Position=- _result;
                              }
                              else
                              {
                                      pReg-&gt;Properties-&gt;Max=100;
                                      ARecord-&gt;Values[ARecord-&gt;RecordIndex,0]=100;
                                      pReg-&gt;Properties-&gt;Text="Готово";
  
      /*
                                          ARecord-&gt;Values[ARecord-&gt;RecordIndex,0]=pReg-&gt;Properties-&gt;Max;
  
                                          pReg-&gt;Position=pReg-&gt;Properties-&gt;Max;
  
      */
                              }
                              AProperties=pReg-&gt;Properties;
  
                          }
                    }
  
              }
  
      }
  </code></pre>
  
  <p>I think that this not a good approach to solve my problem (adding progressbar to a column which it's position get's changed dynamically), because when I click to each's row progressbar's position gets changed due to a last value set to progressbar!!</p>
  
  <p>I prefer to dynamically create progressbar set name and other properties to it during runtime and assign to specific row on <code>GetProperties</code> event.
  What approach is the best one ?
  Is there any demo on this issue? If yes could you share please!
  Thanks in advance !</p>