datagrid不可編輯行一個更簡單的辦法,editable=“true”,然後直接把itemEditBegin給停掉阻止createItemEditor的調用
------解決方案-------------------- 寫renderer呗,renderer裡可以拿到你點的這個cell是第幾行和第幾列,根據行列改變DataGrid的editable屬性,給你一個思路: 1.renderer裡監聽點擊事件; 2.事件處理函數中從listDatadata取出行列index,進行判斷(哪一行可編輯這個變量可以通過創建renderer的時候用properties傳到renderer中); 3.if(true),把listData.owner(或parentDocuemnt)的editable屬性設為true,然後將光標放到點擊的這個cell上(設editedItemPosition屬性,怎麼用自己去查); 4.監聽DataGrid的itemEditEnd事件,事件處理函數中把editable函數在設為false ------解決方案--------------------(已驗證) 想到一個更簡單的辦法,editable=“true”,然後直接把itemEditBegin給停掉阻止createItemEditor的調用, 聽DataGrid的itemEditBegin事件 代碼如下: private function onItemEditBegin(event:DataGridEvent):void { if(event.rowIndex == 0)//如果是第一行,則不讓編輯 { event.stopImmediatePropagation(); } }