PowerShell .NET 可点击 link
PowerShell .NET Clickable link
我正在尝试创建一个可单击的 link,以便在单击 link 时打开电子邮件程序。我找到了一些有关如何执行此操作的信息 here,但它是针对 C# 量身定制的。
到目前为止,我有一个 Panel
和实际的 LinkLabel
。但是我不知道如何使电子邮件客户端打开的事件发生:
代码:
# Panel X: About
$PanelAbout = New-Object System.Windows.Forms.Panel
$PanelAbout.Location = $PanelLocation
$PanelAbout.Size = $PanelSize
$PanelAbout.TabIndex = 8
$PanelAbout.BackColor = $PanelBackColor
$PanelAbout.BorderStyle = 'Fixed3D'
$Form.Controls.Add($PanelAbout)
$PanelAboutLinkLabel = New-Object System.Windows.Forms.LinkLabel
$PanelAboutLinkLabel.Location = New-Object System.Drawing.Point(8,8)
$PanelAboutLinkLabel.Size = New-Object System.Drawing.Size(300,20)
$PanelAboutLinkLabel.DisabledLinkColor = 'Blue'
$PanelAboutLinkLabel.VisitedLinkColor = 'Red'
$PanelAboutLinkLabel.LinkBehavior = 'HoverUnderline'
$PanelAboutLinkLabel.LinkColor = 'Navy'
$PanelAboutLinkLabel.Text = Bob@mail.com
$PanelAbout.Controls.Add($PanelAboutLinkLabel)
感谢您的帮助。
您可以调用 add_Click
事件,并在事件中调用 [system.Diagnostics.Process]::start("mailto:Bob@mail.com")
这应该可以解决问题,如下所示:
$PanelAboutLinkLabel.Text = "Bob@mail.com"
$PanelAboutLinkLabel.add_Click({[system.Diagnostics.Process]::start("mailto:Bob@mail.com")})
有一个很好的例子here
我正在尝试创建一个可单击的 link,以便在单击 link 时打开电子邮件程序。我找到了一些有关如何执行此操作的信息 here,但它是针对 C# 量身定制的。
到目前为止,我有一个 Panel
和实际的 LinkLabel
。但是我不知道如何使电子邮件客户端打开的事件发生:
代码:
# Panel X: About
$PanelAbout = New-Object System.Windows.Forms.Panel
$PanelAbout.Location = $PanelLocation
$PanelAbout.Size = $PanelSize
$PanelAbout.TabIndex = 8
$PanelAbout.BackColor = $PanelBackColor
$PanelAbout.BorderStyle = 'Fixed3D'
$Form.Controls.Add($PanelAbout)
$PanelAboutLinkLabel = New-Object System.Windows.Forms.LinkLabel
$PanelAboutLinkLabel.Location = New-Object System.Drawing.Point(8,8)
$PanelAboutLinkLabel.Size = New-Object System.Drawing.Size(300,20)
$PanelAboutLinkLabel.DisabledLinkColor = 'Blue'
$PanelAboutLinkLabel.VisitedLinkColor = 'Red'
$PanelAboutLinkLabel.LinkBehavior = 'HoverUnderline'
$PanelAboutLinkLabel.LinkColor = 'Navy'
$PanelAboutLinkLabel.Text = Bob@mail.com
$PanelAbout.Controls.Add($PanelAboutLinkLabel)
感谢您的帮助。
您可以调用 add_Click
事件,并在事件中调用 [system.Diagnostics.Process]::start("mailto:Bob@mail.com")
这应该可以解决问题,如下所示:
$PanelAboutLinkLabel.Text = "Bob@mail.com"
$PanelAboutLinkLabel.add_Click({[system.Diagnostics.Process]::start("mailto:Bob@mail.com")})
有一个很好的例子here