Flex 数据网格列禁用和启用

发布于 2024-12-19 09:55:13 字数 1303 浏览 0 评论 0原文

在我的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>

现在我想禁用获取数据时的复选框列..在数据网格中填充数据后,如果用户选择数据网格中的任何字段进行编辑..该所选行的复选框应该启用...其他行复选框应禁用..

我希望这些信息足以满足此要求

对此有任何想法吗?提前谢谢xx...

In my flex application im using a datagrid with following columns

<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>

now i want to disable the checkbox column on fetching data..after datas are populated in datagrid if user selects any of the field in datagrid for editing..the checkbox for that selected row should be enabled...other rows checkbox should be disabled..

I hope this information is enough for this requirement

any idea about this?? thankxx in advance...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

旧人九事 2024-12-26 09:55:13

我不完全理解你的问题,但试图回答它。

<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>

如果您的网格数据提供者是一个声明为公共的 arrayCollection,这将起作用。

I dint understand completely your problem but trying to answer it.

<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>

This will work If your dataprovider for grid is an arrayCollection which is declared as public..

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文