Code Behind

Qu’est-ce que le Code Behind ?

Le “Code Behind” est une classe TypeScript qui est rattachée à une page. Elle permet de définir tous les événements de la page au même endroit, au lieu d’avoir jusqu'à présent une multitude de scripts éparpillés.

Exemple sans Code Behind

Exemple avec Code Behind

 

Comment ça marche ?

Il suffit de définir le nom de la méthode à appeler dans la configuration

"BeforeChildrenLoad": { "Method": "page_BeforeChildrenLoad" }

Puis naviguer vers la méthode en positionnant le curseur sur le nom et appuyer sur F12.
Ou bien clic droit sur le nom et choisir “Go to Definition”

Si la page ne possède pas encore de Code Behind, le Studio nous demandera de valider sa création

Si la page possède déjà son Code Behind, le Studio nous demandera de valider la création de la méthode

On obtient l’exemple ci-dessous, prêt à être codé

export default class mypage_component { async page_BeforeChildrenLoad() { // Let's code } }

 

Mutualisation de code

Comme les différents événements sont écrits dans une même classe, il est possible de mutualiser du code dans une méthode qui serait appelée par les autres.

export default class mypage_component { async cbCustomer_ValueChange() { const cbCustomer = $sender as ComboboxComponent; this.refreshFilter(cbCustomer.getValue()); } async resetCustomer_Click() { this.refreshFilter(0); } async refreshFilter(customerId: number) { $variable.set('customer_ID', customerId, true); await $component.getById<ComboboxComponent>('cbContact').refreshAsync(); await $component.getById<ComboboxComponent>('cbDeal').refreshAsync(); } }