如何单独验证DataGridColumn中的单元格? (ActionScript 3.5)根据给定行中的字段验证配置的每个单元格。例如单独验证DataGridColumn单元格
FIELD VALUE TYPE
age 13 Integer
height 13x3 Integer
registered true Boolean
temperature 98.G6 Float
在这种情况下,当然13x3和98.G6将是无效的。
很容易写一个验证器;并访问数据提供者对象。
但是我怎么到GUI小区的各个访问对象,所以我可以设置Errorstring,则对单个细胞,直接或通过一个验证?跨所述单元
的的itemRenderer/的TextInput控制被重新用于性能的原因,所以访问GUI级对象是棘手的。
编辑
数目:以验证并显示无效标记
一种方法,但不是每小区,是验证所有的数据提供者对象,然后设置整个网格上的错误串。
验证每个单元格的一种方法是在itemEditEnd事件处理程序中。 (见这些页面ABCD)。一个缺点是它只允许从“内部”访问单元,而不是在命令中验证网格的动作。
自定义的itemRenderer是另一种可能性,如在下面的答案,但像3的上方,它只允许从“内部”访问单元,而不是在用于验证对命令网格的动作。
查看Richard Haven的回答如下。
而这里的how to access the GUI objects:相关GUI对象的列表是一个受保护的字段;所以你可以通过继承来访问它,然后迭代代表单元的GUI组件,并在每个组件上设置errorString。
当然,我们会对* dataProvider *中的数据进行验证。问题是如何设置GUI元素,例如* errorString *。您对项目渲染器中的验证标志的想法很好,但仍然无法回答如何从网格外的“验证”按钮验证整个网格。当你有一个要关闭的对话框时,这一点很重要,但必须在关闭时进行验证(根据需要阻止关闭)。 – 2010-06-28 19:49:28