Компоненты валидатора в Flex3 Air - PullRequest
0 голосов
/ 29 октября 2009

Как использовать средства проверки валидатора, такие как Требуемый валидатор, целочисленный валидатор и т. Д. В приложении Air? Я пытался использовать их, но я получил эту ошибку:

Здесь не допускаются объявления компонентов. (Примечание: визуальные потомки должны реализовывать mx.core.IUIComponent)

Я импортировал валидатор вот так ...

import mx.validators.Validator;

и используется вот так

<mx:TextArea id="txtQuestCaption" change="txtQuestCaption_change(event)"/>
<mx:Validator id="reqValidator" source="txtQuestCaption">
</mx:Validator>

Но я получил это выше ошибка ..

как использовать валидатор в эфире?

1 Ответ

1 голос
/ 29 октября 2009

Кажется, что этот код вложен в какой-то контейнерный тег. Переместите тег <mx:Validator/> из текущей позиции и поместите его прямо в корневой тег mxml. Не визуальные теги, такие как Validator, Style и т. Д., Должны быть добавлены в качестве непосредственных потомков корневого тега mxml

<!-- wrong -->
<?xml version="1.0" encoding="utf-8"?>
<mx:Panel xmlns:mx="http://www.adobe.com/2006/mxml">
 <mx:Canvas>
  <mx:TextArea id="txtQuestCaption" change="txtQuestCaption_change(event)"/>
  <mx:Validator id="reqValidator" source="txtQuestCaption"/>
 </mx:Canvas>
</mx:Panel>

<!-- correct -->
<?xml version="1.0" encoding="utf-8"?>
<mx:Panel xmlns:mx="http://www.adobe.com/2006/mxml">
  <mx:Canvas>
    <mx:TextArea id="txtQuestCaption" change="txtQuestCaption_change(event)"/>
  </mx:Canvas>
  <mx:Validator id="reqValidator" source="txtQuestCaption"/>
</mx:Panel>
...