2015-12-08 2 views
0

J'ai une Xpage avec un contrôle de répétition. Le nom de l'index est défini. Dans la répétition est un autre contrôle personnalisé. Maintenant, vous voulez l'index dans le contrôle personnalisé imbriqué. La seule façon de remplir une donnée composite?Héritage de RepeatControl dans des contrôles personnalisés imbriqués

Je dois unique une classe div dans le contrôle personnalisé imbriqué. Est-ce la bonne façon?

Thx

Répondre

4

Tous les composants dans un XPage sont chargés d'abord comme une arborescence, l'arborescence des composants. Tout composant a accès à n'importe quel élément vers le haut et vers l'extérieur à partir de cette branche. Ainsi, si un contrôle personnalisé est imbriqué dans une répétition, il a accès à la ligne de répétition et aux variables relatives à cette ligne. Donc, si vous définissez la propriété indexVar="idex", tout comme n'importe quel composant sur cette ligne résoudra le nom de la variable idex en tant qu'index de ligne en cours, la même chose est vraie pour un contrôle personnalisé imbriqué dans une ligne.

Tant que indexVar a le même nom de variable dans toute XPage dans laquelle vous imbriquez le contrôle personnalisé, vous n'avez pas besoin de transmettre la variable.

+0

explication parfaite, comme toujours. Juste une remarque, cependant: avec les contrôles personnalisés, il y a toujours une chance qu'ils puissent être utilisés ailleurs, c'est-à-dire dans un "endroit" où il n'y a pas de "idex" disponible. C'est pourquoi je préfère généralement passer explicitement toutes les valeurs externes dans le CC en utilisant compositeData –

+0

Pour cela, j'utiliserais probablement une définition de design, en spécifiant explicitement tous les noms de variables que vous devez avoir dans le contrôle personnalisé/XPage englobant. Comme toujours, la définition de conception permet de garantir le chargement des contrôles personnalisés et des XPages plus rapidement. Je n'ai pas testé 100% où ces variables sont stockées. Il pourrait être dans requestScope, auquel cas il serait possible "d'intercepter et de définir la valeur". –

+0

intéressant; que voulez-vous dire par rapport aux variables dans le contexte des définitions de conception? Ai-je probablement manqué quelque chose ici? - edit: quelques googlings ont apporté un éclairage sur ce sujet, par ex. http://dontpanic82.blogspot.de/2010/01/xpages-using-powerful-design-definition.html. Très intéressant, en effet! –