如何單獨驗證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