s:DataGrid与CheckBox的问题!
我在DataGrid表格第一列中加入了CheckBox控件,代码如下:
<s:GridColumn width="50">
<s:headerRenderer>
<fx:Component>
<s:DefaultGridHeaderRenderer>
<s:labelDisplay>
<s:Label id="labelDisplay" text="选择" click="outerDocument.selectAll()"
verticalCenter="1" left="0" right="0" top="0" bottom="0"
textAlign="center" fontWeight="bold" verticalAlign="middle"
maxDisplayedLines="1" showTruncationTip="true" />
</s:labelDisplay>
</s:DefaultGridHeaderRenderer>
</fx:Component>
</s:headerRenderer>
<s:itemRenderer>
<fx:Component>
<s:DefaultGridHeaderRenderer>
<s:CheckBox id="cb" horizontalCenter="0"/>
</s:DefaultGridHeaderRenderer>
</fx:Component>
</s:itemRenderer>
</s:GridColumn>
以上代码可以在GataGrid表格第一列显示CheckBox控件,点击“选择”标题可以执行selectAll()函数。
现在问题来了,怎样在selectAll()函数中处理DataGrid表格第一列CheckBox的“选或不选”状态(也就是设置CheckBox的Checked属性)?也就是通常说的全选和反选功能????
还有就是怎样用过另一函数获取DataGrid表格中已先的CheckBox列值,也就是获取DataGrid表格的的列值????
[解决办法]
1.给DataGrid的dataprovider赋一个数据源
2.checkbox绑定那个属性。
3.在selectAll中处理数据源(全为true or false)
[解决办法]
不懂
for(var i:int=0;i<arr.length;i++) {
var obj:Object=arr[i];
obj["isSelected"]=!obj["isSelected"];
}
arr[i] 的值又没有改变,怎么会选中