2012-05-29 52 views
1

我最近想确保特定的单元格已准备好进行编辑。 所以我尝试在datagrid上使用editedItemPosition属性,但单元格不在编辑中。在Datagrid上设置编辑位置

有关信息,我的datagrid使用itemrenderer和editorrenderer和datagrid editable属性为true。

private function setSelectedItem():void 
{ 
    var gData:Object = dgSuiviClini.dataProvider; 
    var todayDate:String= new DateUtility().DateAsToString(new Date()); 

    for(var i:Number=0; i < gData.length; i++) 
    { 
     var thisObj:Object = gData.getItemAt(i); 
     if(thisObj.grDateDeb == todayDate) 
     { 
      dgSuiviClini.selectedIndex = i; 
      //sometimes scrollToIndex doesnt work if validateNow() not done 
      dgSuiviClini.validateNow(); 
       //dgSuiviClini.scrollToIndex(i); 
     } 
     else{ 
      dgSuiviClini.validateNow(); 
       // dgSuiviClini.scrollToIndex(gData.length); 


     } 
    } 
    dgSuiviClini.validateNow(); 
    dgSuiviClini.editedItemPosition = { rowIndex: gData.length-1, columnIndex: 3 }; 


} 

感谢您的帮助。现在

回答

0

,它的工作原理与此代码

private function setSelectedItem():void 
{ 
    var gData:Object = dgSuiviClini.dataProvider; 
    var todayDate:String= new DateUtility().DateAsToString(new Date()); 

    for(var i:Number=0; i < gData.length; i++) 
    { 
     var thisObj:Object = gData.getItemAt(i); 
     if(thisObj.grDateDeb == todayDate) 
     { 
      dgSuiviClini.selectedIndex = i; 
      //sometimes scrollToIndex doesnt work if validateNow() not done 
      dgSuiviClini.validateNow(); 
       //dgSuiviClini.scrollToIndex(i); 
     } 
     else{ 
      dgSuiviClini.validateNow(); 
       // dgSuiviClini.scrollToIndex(gData.length); 


     } 
    } 
    dgSuiviClini.validateNow(); 
    dgSuiviClini.editedItemPosition = { rowIndex: gData.length-1, columnIndex: nColSaisie }; 


}