RichTextBox的Powershell LinkClicked事件

时间:2015-02-25 15:36:54

标签: powershell richtextbox powershell-v3.0 powershell-ise

我使用Windows Windows.Forms.RichTextBox重定向我的powershell脚本输出“$ var”。 Detect.Urls已启用并正常工作,但无法通过单击打开它们。

任何人都可以帮助我使用powershell脚本中链接点击事件处理程序的代码........

$outputBox = New-Object System.Windows.Forms.RichTextBox 
$outputBox.Location = New-Object System.Drawing.Size(10,150) 
$outputBox.Size = New-Object System.Drawing.Size(700,300) 
$outputBox.MultiLine = $True
$outputBox.SelectionIndent = 8
$outputBox.SelectionHangingIndent = 3
$outputBox.SelectionRightIndent = 12
$outputBox.ScrollBars = "ForcedBoth"
$Form.Controls.Add($outputBox)
$outputBox.Text = $var
$Form.Add_Shown({$Form.Activate()})
[void] $Form.ShowDialog()

2 个答案:

答案 0 :(得分:1)

您必须自己处理点击事件

$outputBox.add_LinkClicked({
    Start-Process -FilePath $_.LinkText
})

单击时将在默认浏览器中打开链接。

答案 1 :(得分:0)

这就是我使用Powershell Studio的方法...右键单击控件并添加一个新事件...添加linkclicked事件,然后转到脚本并添加以下内容。 根据您想要打开的内容,您可能需要使用除资源管理器之外的其他内容,但$ _。linktext应该具有您想要的URL链接。请注意,如果有空格,您将需要更换它们,因为网址会在遇到的第一个空格处断开。

$Linkclicked = $_.LinkText
explorer.exe $Linkclicked