Les événéments

Tous les événements des contrôles et composants sont interceptibles et peuvent provoquer l'exécution de script.

Le conteneur des contrôles est du type EDVCtrlWinForm et est accessible par le mot-clé edvDocument (ou edvWinForm).

Les variables de type Visual possèdent des sous-variables par type de présentation. Ici, nous considérons la variable WIN et sa sous-arborescence.

edvDocument.Variable reçoit la référence d'une variable de type Visual.
edvDocument.Presentation == Presentation.Window indique que c'est la sous-variable WIN qui contient les données d'affichage.

Ces scripts sont du code, c'est à dire qu'ils peuvent intégrer du script côté serveur à l'intérieur de balises <?= ?> et <? ?>.
Il doit être clair que le script côté serveur est exécuté pour générer le code exécuté côté client.
En conséquence de quoi il n'est pas possible d'effectuer une boucle côté client qui appelerait l'interprétation d"un script côté serveur à chaque itération par la seule syntaxe du code.
Toutefois, edvcode(pvar) retourne l'évaluation d'une variable de type Code.

Le JScript pour EDVClient n'intègre pas d'analyse de syntaxe permettant d'accéder aux variables aussi facilement que du côté serveur. Il ne faut pas oublier que la communication Client/Serveur n'est pas négligeable dans les temps de réponses.

L'accés aux variables s'effectue par le biais de la fonction edvar(string varName).

Exemple de script sur l'événement Click d'un bouton.

Le code est contenu dans une sous-variable OnClick, de type Code, du contrôle.

if(MessageBox.Show("Etes vous sûr de vouloir supprimer le fichier <?= ..Process.File ?> ?",
       edvClient.ToString(),
       MessageBoxButtons.YesNo) == DialogResult.Yes) {
  edvar("<?= ..Process.File:Name ?>.Delete").Value = true;
}

Capturer un événement par script

Vous pouvez enregistrer une variable de type Code pour l'événement d'un contrôle en JScript (côté client).

var ctrl = new Button();
  edvDocument.Controls.Add(ctrl);
  edvDocument.RegisterCtrlEvent(ctrl, "Click", edvDocument["MyButtons.OnClick"]);
  

Evénement d'une variable EDV

Voir Visual.WIN.OnVariableChanged

Voir aussi

Les classes de contrôles
EDVCtrlWinForm.JScript.dll