使用Visual Studio创建Powershell GUI

时间:2018-12-19 10:02:59

标签: visual-studio powershell

我正在使用Visual Studio为我所有的PowerShell脚本创建一个GUI环境,以创建一个通用平台。我的文本框有一个问题。我想要一个文本框,以便所有结果都出现在这里。现在只有最后一个命令出现在这里。

有什么建议吗?

 <TextBox  x:Name="Information" HorizontalAlignment="Left" Margin="10,116,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Grid.ColumnSpan="3" Height="255" Width="678"/>

我希望在此texbox中显示以下消息

$WPFMapping.Add_Click({
    {
        $WPFInformation.Text = " We Will try to map the drives"}
    if (((New-Object System.IO.DriveInfo("N:")).DriveType -ne
    "NoRootDirectory"))
    {
        $WPFInformation.Text = " N drive is already mounted and accessible"}
    else {
        net use /persistent:yes N: "this drive"
        Write-Host     "mounting"}
    if (((New-Object System.IO.DriveInfo("V:")).DriveType -ne
    "NoRootDirectory"))
    {
        $WPFInformation.Text = " V drive is already mounted and accessible"}
    else  {
        $WPFInformation.Text = " V drive mapping in progress"}
    net use /persistent:yes V: "this drive"
    $WPFInformation.Text = " V drive mapping has been completed"
})

1 个答案:

答案 0 :(得分:1)

通过在$WPFInformation.Text中为第二个驱动器映射(V:)设置文本,您将覆盖先前在N:映射中设置的文本。

要将多余的行添加到文本框,请使用

$WPFInformation.Text += [Environment]::NewLine
$WPFInformation.Text += " V drive is already mounted and accessible"

等您要添加的下一行。

您也可以使用AppendText()在其中添加新行:

$WPFInformation.AppendText("`r`n V drive is already mounted and accessible")

其中`r`n 代表CRLF换行符。

p.s。当然,请确保文本框的MultiLine属性设置为$WPFInformation.Multiline = $true