【发布时间】:2011-07-24 17:12:49
【问题描述】:
我在数据网格的列中的每个单元格上使用 NumberValidator。源设置为数据网格的 dataProvider 但属性是问题。我不能只说“文本”,因为我使用 labelFunction 来检索属性,因为它嵌套在另一个对象中。
有什么办法可以解决这个问题?我需要创建自己的自定义验证器吗?我希望不是。任何提示都表示赞赏。
谢谢!
<mx:NumberValidator
source="{this.secId_dg.dataProvider}" lowerThanMinError="A locate is required."
property="marketRule.locRule.locRuleId" minValue="0" />
<mx:DataGrid
editable="true"
width="100%"
rowCount="10"
tabEnabled="false">
<mx:columns>
<mx:DataGridColumn
editorDataField="text"
editable="true">
<mx:itemEditor>
<mx:Component>
</mx:Component>
</mx:itemEditor>
</mx:DataGridColumn>
<mx:DataGridColumn
headerText="Description"
dataField="description"
width="200"
editable="false"/>
<mx:DataGridColumn
headerText="Locate"
headerStyleName="leftGridHeader"
paddingRight="4"
textAlign="right"
labelFunction="getLocate"
editable="true"
dataField="locRuleDesc"
editorDataField="selectedLabel"
/>
<mx:DataGridColumn
headerText="Comments"
width="200"
editable="true"/>
<mx:DataGridColumn
headerText="Delete"
editable="false"
DeleteIconRenderer"/>
</mx:columns>
</mx:DataGrid>
【问题讨论】:
-
抱歉,添加 cmets 时代码编辑器无法正常工作。无论如何,上面是我正在尝试使用的验证器。显然,“属性”值不正确,但我只是想说明我要验证的是“locRuleId”,它是 locRule 对象的一部分,它是 marketRule 对象的一部分。
-
erm,可以编辑您的原始帖子吗?并添加更多代码,而不仅仅是数字验证器。我想看看你是如何设置数据网格的。
-
如果我发布那个问题/试图解决那个问题,我会构建一个小型测试应用程序(将排除任何其他原因,如果您发布一个小型应用程序代码,人们会运行它并自己试试)
标签: apache-flex actionscript-3 flex3 flex4