运行窗体时的Powershell输出问题

时间:2019-01-23 07:50:25

标签: powershell

运行表单代码时,我将不同的对象添加到表单(按钮,标签等)中,我使用命令$Form1.Controls.Add([ObjectType])将对象附加到表单上。

我的问题是,当我运行代码时,我会在控制台中看到一个即时数字序列,并输出以下对话框:

0 1 2 3 4 5 6 7 8 9 0 1 2

当我单击“提交”按钮后,字符串“ OK”被添加到上面显示的数字中

0 1 2 3 4 5 6 7 8 9 0 1 2 OK

为什么会发生这种情况,以及如何删除这些内容或至少将它们从显示中忽略掉。 按下“提交”按钮后,将显示确定。 好

2 个答案:

答案 0 :(得分:1)

诸如.Add()之类的某些动作正在产生输出。为防止这种情况,请在行的末尾添加[void]或将| Out-Null直接添加到所使用变量的前面,将输出通过管道传递到[void],例如:

$foo.SomethingThatGeneratesOutput() | Out-Null

[void]$foo = SomethingThatGeneratesOutput

答案 1 :(得分:0)

正如T-Me所说,为防止在使用[Void]的情况下执行方法时生成输出。

[Void]$Form1.Controls.Add([ObjectType])

如果代码仍在返回不需要的数据,请在PowerShell ISE中打开脚本,然后逐行执行脚本(选择该行并按F8键)。这将帮助您确定哪一行代码仍在生成输出。