2012-06-26 3 views
1

J'ai créé une coutume SmartGWT FormItem (en créant une classe enfant CustomTextItem qui étend la classe com.smartgwt.client.widgets.form.fields.TextItem), alors j'ajouté une instance de CustomTextItem à certains DynamicForm:
sur mesure SmartGWT FormItem

... 
DynamicForm form = new DynamicForm(); 
form.setFields(new TextItem("text_field"), new CustomTextItem("custom_field")); 
... 

Maintenant, mon problème est que je ne peux pas obtenir la valeur de mon objet personnalisé en utilisant la méthode getValue() de la forme dynamique:

Object text_value = form.getValue("text_field"); <<< this is OK 
Object custom_value = form.getValue("custom_field"); <<< this always returns null 

le questi on est là où l'objet forme récupère ses valeurs sur sumbittion ou validation?
Je pense que je devrais remplacer une méthode de classe TextItem ou définir une propriété pour ce faire.
Une idée?

Répondre

1

vous devez remplacer la méthode getValue dans votre CustomTextItem et retourner la valeur du CustomTextItem

+0

overrideing de getValue n'a PAS résolu mon problème! –

+0

@EhsanKhodarahmi oui, il suffit de savoir quoi y mettre. Je ne pense pas qu'un simple 'super.getValue()' le résoudrait? –

+0

@EhsanKhodarahmi au moins nous montrer le code de votre CustomTextItem –

0

Vous pouvez obtenir la valeur directement à partir de votre article comme celui-ci form.getItem (« yourItemInstanceName »). GetValue()
Vous n'avez pas besoin d'accéder au formulaire pour cela.