Question Portée des variables sur un bouton d'une interface

Plus d'informations
il y a 11 ans 7 mois #17884 par clément
Bonjour à tous,
Actuellement, je fais un script comprenant une interface graphique qui contient plusieurs boutons.
Un bouton permettant l'initialisation, un second exécutant un traitement suivant les paramètre choisit par l'utilisateur.

Mon problème est que sur Powershelle V2 tout fonctionne, mais en V3, cela ne fonctionne plus

plus en details:
En version 2, sur notre bouton, quand on met notre script d'action du bouton dans le \"add_click\". la portée des variables est dans le add_click, et en dehors du add_click.

En Version3, La portée du \"Add_Click\" se limite a ce qui se trouve dans le add_click, et peut récupérer des variable, mais il ne les laisse pas se diffuser en dehors.

exemple:

[code:1]$button1_OnClick= {$value = 10}

$button2_OnClick= {Write-Host $value}

# autre paramètre du button 1
$button1.add_Click($button1_OnClick)

# autre paramètre du button 2
$button2.add_Click($button2_OnClick)[/code:1]

Lors de son exécution, si on clic sur button 1, puis sur Button 2, sur PowerShell V2, la valeur de $Value, s'affiche, sur PowerShell V3, la valeur n'est pas récupérer.

est-ce que quelqu'un a une solution?
merci d'avance ;)
Bonne journée à vous<br><br>Message édité par: anonym17, à: 4/08/14 14:38

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 7 mois #17886 par Laurent Dardenne
anonym17 écrit:

est-ce que quelqu'un a une solution?

Essaie en utilisant la portée [code:1]$script:Value[/code:1]

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 7 mois #17887 par clément
Merci,
Cela Fonctionne, mais je trouve pas ça très propre de changer la portée,
je préfère le faire sortir avec un return, et faire rentrer dans un param
qu'en pense-tu?
De plus, je trouve le fonctionnement des portées assez mystérieuses.

merci en tout cas ;)<br><br>Message édité par: anonym17, à: 4/08/14 15:34

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 7 mois #17888 par ANTRI Mohamed
Je trouve qu'en modifiant les portées souvent c'est une galère pour troubleshooter après :P

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 7 mois #17889 par clément
tu vois une autre solution à mon problème? :blink:

Merci ;)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 7 mois #17890 par Laurent Dardenne
anonym17 écrit:

Merci,
Cela Fonctionne, mais je trouve pas ça très propre de changer la portée,

Oui je suis d'accord.
anonym17 écrit:

qu'en pense-tu?

Je devais approfondir ce point relevé dans un autre post, mais je n'ai pas pris le temps.
Il y a peut être un breaking change sur ce point...
anonym17 écrit:

De plus, je trouve le fonctionnement des portées assez mystérieuses.

Mystérieuses je ne pense pas, mais insuffisamment documentée certainement.
Un idée de tutoriel :)

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.065 secondes
Propulsé par Kunena