PoshCode Archive  Artifact [cb653eb661]

Artifact cb653eb66151c46e654f4135ba0865cfad3009a0fc7898c4a5880a921a7730a1:

  • File Test-Prompt.ps1 — part of check-in [341abbb319] at 2018-06-10 14:09:39 on branch trunk — Test the Prompt features (user: Damien Ryan size: 1533)

# encoding: ascii
# api: powershell
# title: Test-Prompt
# description: Test the Prompt features
# version: 0.1
# type: script
# author: Damien Ryan
# license: CC0
# x-poshcode-id: 6176
# x-archived: 2016-03-18T21:04:12
# x-published: 2016-01-11T20:04:00
#
#
$choices = [System.Management.Automation.Host.ChoiceDescription[]](
(New-Object System.Management.Automation.Host.ChoiceDescription "&Yes","Choose me!"),
(New-Object System.Management.Automation.Host.ChoiceDescription "&No","Pick me!"))

$Answer = $host.ui.PromptForChoice('Caption',"Message",$choices,(1))

Write-Output $Answer

$fields = new-object "System.Collections.ObjectModel.Collection``1[[System.Management.Automation.Host.FieldDescription]]"

$f = New-Object 	 "String Field"
$f.HelpMessage  = "This is the help for the first field"
$f.DefaultValue = "Field1"
$f.Label = "&Any Text"

$fields.Add($f)

$f = New-Object System.Management.Automation.Host.FieldDescription "Secure String"
$f.SetparameterType( [System.Security.SecureString] )
$f.HelpMessage  = "You will get a password input with **** instead of characters"
$f.DefaultValue = "Password"
$f.Label = "&Password"

$fields.Add($f)

$f = New-Object System.Management.Automation.Host.FieldDescription "Numeric Value"
$f.SetparameterType( [int] )
$f.DefaultValue = "42"
$f.HelpMessage  = "You need to type a number, or it will re-prompt"
$f.Label = "&Number"

$fields.Add($f)

$results = $Host.UI.Prompt( "Caption", "Message", $fields )

Write-Output $results