flex禁用组件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flex禁用组件相关的知识,希望对你有一定的参考价值。

我有一个下拉框在有的时候要把下拉框禁用掉,需要使用什么属性。
相当于jsp的disable属性。

enable='false'就可以 参考技术A 查SDK,重写组件,兄弟,别懒了。

如何在 Flex 4 的可编辑数据网格中禁用自动排序

【中文标题】如何在 Flex 4 的可编辑数据网格中禁用自动排序【英文标题】:How to disable automatic sorting in Editable Datagrid in Flex 4 【发布时间】:2011-07-10 21:06:06 【问题描述】:

我有一个可编辑的数据网格。如果通过单击数据网格的任何标题来应用排序,则可以正常工作。但在那之后,如果数据网格的任何一行中的数据值发生变化,则会自动应用排序。如何防止这种行为?即仅当用户单击数据网格的任何标题时才应应用排序,并且当用户修改网格中的数据时不应应用排序。

【问题讨论】:

【参考方案1】:

您必须将sortableColumns 设置为false 并处理headerRelease 事件,您可以在其中对数据源执行sorting manually。

<mx:DataGrid sortableColumns="false" headerRelease="onHeaderRelease(event)" ...

【讨论】:

感谢您的回复,我的要求是在编辑数据网格的任何列后停止自动排序,即如果用户修改了可编辑数据网格的任何列,itemEditEnd 事件会随着自动排序而触发。例如,如果用户更改了第一行中的值,则在此更改后,修改后的行可能会通过自动排序成为数据网格的最后一行。我的问题是我们可以停止这种自动排序吗?将 sortableColumns 设置为 false 只会阻止用户通过单击标题来停止排序。 @zolo:据我了解,在您第一次点击标题之前,不会应用自动排序。 是的,我想停止在 itemEditEnd 之后触发的自动排序,即使在单击标题后也是如此。但是用户可以随时通过单击标题手动对数据进行排序。【参考方案2】:

在您的项目编辑器中提交值之前,只需调用Object(owner).dataProvider.disableAutoUpdate()

【讨论】:

【参考方案3】:

我知道您在 Flex 4 中提出了这个问题,但我希望我在 Flex 3 中找到的解决方案会有所帮助。

我也遇到了同样的问题,但后来我意识到数据中的某些东西一定会触发排序发生。 事实证明,我正在将数据设置为 [Bindable]。看到排序自动发生是有道理的,因为值更改调度 propertyChange 事件。

如果您确实需要将数据设为 [可绑定],请使用自定义绑定: http://livedocs.adobe.com/flex/3/html/help.html?content=ascomponents_4.html

【讨论】:

以上是关于flex禁用组件的主要内容,如果未能解决你的问题,请参考以下文章

自定义 flex MenuBar 或移除悬停效果

vue的vant组件库中TreeSelect分类选择怎么修改左边分类列表的宽度???急

如何根据屏幕宽度禁用 onMouseEnter/onMouseLeave 事件?

flex 自定义组件

Flex - 如何在一个组件中定义另一个组件的功能?

如何在 Flash 中创建 Flex Display 组件?