Столбец сетки данных Flex отключить и включить
В моем приложении Flex я использую сетку данных со следующими столбцами
<mx:DataGrid x="10" y="265" width="1205" dataProvider="{vendors}" editable="true" lockedColumnCount="4" horizontalScrollPolicy="on">
<mx:DataGridColumn headerText="Select" editable="false" textAlign="center" >
<mx:itemRenderer >
<mx:Component>
<mx:CheckBox click="data.select = !data.select" change="outerDocument.addDetail(data)" selected="{data.select}" >
</mx:CheckBox>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
<mx:DataGridColumn headerText="One" dataField="one" color="black" editable="false" width="125" />
<mx:DataGridColumn headerText="Two" dataField="two" color="black" editable="false" width="125"/>
<mx:DataGridColumn headerText="Three" dataField="three" color="black" editable="false"/>
</mx:DataGird>
Теперь я хочу отключить столбец флажок при получении данных.. после того, как данные заполняются в сетке данных, если пользователь выбирает любое поле в сетке данных для редактирования.. флажок для этой выбранной строки должен быть включен... флажок других строк должен быть отключен..
Я надеюсь, что этой информации достаточно для этого требования
есть идеи об этом?? заранее спасибо...
1 ответ
Решение
Я не совсем понимаю вашу проблему, но пытаюсь ответить на нее.
<mx:DataGrid x="10" y="265" width="1205" dataProvider="{vendors}" editable="true" lockedColumnCount="4" horizontalScrollPolicy="on" id="dgGrid">
<mx:DataGridColumn headerText="Select" editable="false" textAlign="center" >
<mx:itemRenderer >
<mx:Component>
<mx:CheckBox click="data.select = !data.select" change="outerDocument.addDetail(data)" selected="{data.select}"
enabled="{outerDocument.dgGrid.selectedIndex==outerDocument.vendors.getItemIndex(data)}>
</mx:CheckBox>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
<mx:DataGridColumn headerText="One" dataField="one" color="black" editable="false" width="125" />
<mx:DataGridColumn headerText="Two" dataField="two" color="black" editable="false" width="125"/>
<mx:DataGridColumn headerText="Three" dataField="three" color="black" editable="false"/>
</mx:DataGird>
Это будет работать, если ваш поставщик данных для grid является arrayCollection, который объявлен как public..