Utiliser l’applet de commande Out-GridView dans des scripts Windows PowerShell
Out-GridView est principalement utilisé pour passer en revue les données. Toutefois, vous pouvez également utiliser Out-GridView pour créer une interface de sélection de menu simple. Lorsque l’utilisateur effectue une ou plusieurs sélections dans la fenêtre présentée par Out-GridView, les données de ces objets sont transmises plus loin dans le pipeline ou placées dans une variable. La syntaxe de sélection d’une option dans Out-GridView est la suivante :
$selection = $users | Out-GridView -PassThru
Dans l’exemple précédent, un tableau de comptes d’utilisateur est redirigé vers Out-GridView. Out-GridView affiche les comptes d’utilisateur à l’écran, et l’utilisateur peut sélectionner une ou plusieurs lignes dans la fenêtre Out-GridView . Lorsque l’utilisateur sélectionne OK, les lignes sélectionnées sont stockées dans la $selection variable. Vous pouvez ensuite effectuer un autre traitement sur les comptes des utilisateurs.
Pour conserver davantage de contrôle sur la quantité de données que les utilisateurs peuvent sélectionner, vous pouvez utiliser le paramètre -OutputMode au lieu du paramètre -PassThru . Le tableau suivant illustre les valeurs qui peuvent être définies pour le paramètre -OutputMode .
Tableau 1 : Valeurs qui peuvent être définies pour le paramètre -OutputMode
| Valeur | Description |
|---|---|
| Aucun(e) | Il s’agit de la valeur par défaut qui ne passe aucun objet en aval du pipeline. |
| Unique | Cette valeur permet aux utilisateurs de sélectionner zéro ligne ou une ligne dans la fenêtre Out-GridView . |
| Multiple | Cette valeur permet aux utilisateurs de sélectionner zéro ligne, une ligne ou plusieurs lignes dans la fenêtre Out-GridView . Cette valeur équivaut à utiliser le paramètre -PassThru. |
Remarque
Étant donné que les utilisateurs ne sont pas obligés de sélectionner une ligne dans la fenêtre Out-GridView , vous devez vous assurer que votre script gère correctement le scénario dans lequel une ligne n’est pas sélectionnée.