【问题标题】:How to know which link from one and the same linklabel was right clicked in the context menu?如何知道在上下文菜单中右键单击了同一个链接标签中的哪个链接?
【发布时间】:2013-08-22 10:36:29
【问题描述】:

我有一个LinkLabel,它附加了一个上下文菜单条。此上下文菜单有 2 个选项:“复制超链接”或“打开超链接”。链接标签中只有一个链接时没有问题。但是我不知道您如何(如果可以)知道链接标签中Links 属性中的哪个链接被右键单击。这就是我拥有的适用于单个链接的内容:

private void contextMenuStrip_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
    ContextMenuStrip item = sender as ContextMenuStrip;
    LinkLabel tempLink = item.SourceControl as LinkLabel;
    if (e.ClickedItem.Text == "&Open Hyperlink")
    {
        System.Diagnostics.Process.Start(tempLink.Links[0].LinkData.ToString());
    }
    else
    {
        System.Windows.Forms.Clipboard.SetText(tempLink.Links[0].LinkData.ToString());
    }
}

欢迎提供有关如何知道点击了哪个Links 的帮助。

【问题讨论】:

    标签: c# contextmenustrip linklabel


    【解决方案1】:

    使用点击事件并输入以下代码 LinkLabel llb = (LinkLabel) 发件人; 现在 llb.Text 具有您单击链接标签的文本。

    【讨论】:

    • 我真的不记得问过这个问题了:p 我会接受这个并完成它。
    【解决方案2】:

    有几种方法可以做到这一点。 快速的一个是上下文菜单条上的opening 事件。在该发件人中将是右键单击的任何内容。

    您可以将其存储为 currentLinkLabel,或者您可以设置菜单项的 Tag 属性

    【讨论】:

    • ContextMenuStrip 没有Popup 事件。你说的是ContextMenu
    猜你喜欢
    • 1970-01-01
    • 2015-05-10
    • 1970-01-01
    • 1970-01-01
    • 2017-05-11
    • 1970-01-01
    • 2021-01-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多