【问题标题】:Powershell LinkClicked event for a RichTextBoxRichTextBox 的 Powershell LinkClicked 事件
【发布时间】:2015-02-25 15:36:53
【问题描述】:

我正在使用 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()

【问题讨论】:

    标签: powershell richtextbox powershell-3.0 powershell-ise


    【解决方案1】:

    你必须自己处理点击事件

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

    点击时会在默认浏览器中打开链接。

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多