A la place du return $ouvrir1.FileName;, tu devrais simplement faire $Sccript:chemin=$ouvrir1.FileName;
ou peut-être $bouton1.add_click($chemin={ ....})
une autre possibilité, peut-être meilleure: c'est de déclarer une fonction GetFile (par exemple) qui contient le code et qui serait appeler ensuite dans add_click
[string]$chemin
$bouton1 = New-Object Windows.Forms.Button
$bouton1.Location = New-Object Drawing.Point 250,100
$bouton1.Size = New-Object Drawing.Point 80,50
$bouton1.text = "Parcourir"
Function GetFile(){
#Création d'un objet "ouverture de fichier".
$ouvrir1 = New-Object System.Windows.Forms.OpenFileDialog
#Initialisation du chemin par défaut.
$ouvrir1.initialDirectory = "D:\Documents"
#Ici on va afficher que les fichiers en ".txt".
$ouvrir1.filter = "pdf Files (*.pdf)| *.pdf"
#Affiche la fenêtre d'ouverture de fichier.
$ouvrir1.ShowDialog()
return $ouvrir1.FileName;
}
$bouton1.add_click({$chemin=GetFile})
Problème scope variable Powershell
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.