J'ai un objet qui contient une douzaine de champs que je veux lier à des éléments de formulaire, de sorte que je peut utiliser cet objet pour renvoyer les données au serveur à enregistrer.Flex Avertissement: impossible de lier la propriété 'foo' sur la classe 'Object' (la classe n'est pas un IEventDispatcher)
Définition de mon objet conteneur:
private static const emptyLink:Object = {
id: -1, title:'',
trigger1:'',trigger2:'',trigger3:'',trigger4:'',trigger5:'',
linkTitle:'', linkBody:'',
answer1:'',answer2:'',answer3:'',answer4:'',answer5:''
};
[Bindable] public var currentLink:Object = emptyLink;
currentLink
est affecté à l'exécution d'un index spécifique d'un ArrayCollection, je suis juste en utilisant l'objet emptyLink
à des fins d'initialisation, la plupart du temps.
<mx:Panel id="triggerPanel" title="Trigger" width="33%">
<mx:VBox id="tpBoxes" width="100%" paddingBottom="5" paddingLeft="5" paddingRight="5" paddingTop="5">
<mx:TextInput id="trigger1" width="100%" textAlign="left" text="{currentLink.trigger1}" />
<mx:TextInput id="trigger2" width="100%" textAlign="left" text="{currentLink.trigger2}" />
<mx:TextInput id="trigger3" width="100%" textAlign="left" text="{currentLink.trigger3}" />
<mx:TextInput id="trigger4" width="100%" textAlign="left" text="{currentLink.trigger4}" />
<mx:TextInput id="trigger5" width="100%" textAlign="left" text="{currentLink.trigger5}" />
</mx:VBox>
</mx:Panel>
Bien sûr, cela compile et affiche très bien, mais il y a des avertissements d'exécution pour chaque instance:
avertissement: incapable de se lier à la propriété « trigger1 » la classe « Object » (classe pas un IEventDispatcher) avertissement: impossible de lier à la propriété 'trigger2' sur la classe 'Object' (la classe n'est pas un IEventDispatcher) avertissement: impossible de lier à la propriété 'trigger3' sur la classe 'Object' (la classe n'est pas un IEventDispatcher) avertissement: impossible de lier à la propriété 'trigger4' sur la classe 'Object' (la classe n'est pas un IEventDispatcher) avertissement: incapable de se lier à la propriété « trigger5 » sur l'objet de «classe (classe est pas un IEventDispatcher)
Et l'objet currentLink
est pas mis à jour lorsque les champs TextInput
sont modifiés.
La réponse évidente est que mon objet doit être une instance d'une classe qui implémente IEventDispatcher
. Ce que cette réponse ne me dit pas, c'est les détails de l'implémentation de cette interface (qu'est-ce qui est nécessaire, qu'est ce qui ne l'est pas?), Et s'il y a un moyen plus simple de le faire. pour la liaison, sans que je doive m'inquiéter des détails de l'implémentation de l'interface.
Une telle classe existe-t-elle? Si non, quel est le strict minimum et/ou la norme acceptée pour accomplir cette tâche?
votre lien ne va pas à la page dans les livesocs que vous pensiez faire. Chaque page de référence de livesocs a un «lien actuel: ...» dans son pied de page, avec l'URL pour relier directement la page que vous consultez. Utiliser ça. :) –