如何将链接标签附加到现有标签

本文关键字:标签 链接 | 更新日期: 2023-09-27 18:13:26

我在面板中有一个标签来显示简单的文本。现在我有了一个动态添加的链接标签,它显示了更多的信息。如何在运行时将此链接标签显示在标签文本旁边?例如,标签显示

添加一条记录。

我需要在标签文本旁边显示一个链接标签"View Additional Details"。

添加一条记录。查看其他详细信息

我有下面的代码,但它重叠现有的标签文本。谢谢你的帮助!

        LinkLabel details = new LinkLabel();
        details.Text = "View Additional Details";
        LinkLabel.Link link = new LinkLabel.Link();
        link.LinkData = infoDetails;
        details.Links.Add(link);
        details.LinkClicked += new LinkLabelLinkClickedEventHandler(details_LinkClicked);
        //Adding the link label control to the existing label control
        lblInfo.Visible = true;
        lblInfo.AutoSize = true;
        lblInfo.Controls.Add(details);

如何将链接标签附加到现有标签

为什么要给标签添加LinkLabel ?将LinkLabel添加到与标签相同的表单中,并适当设置LinkLabel的位置。

在下面的例子中,我假设代码是从表单的类(或面板,如果你正在使用一个)调用的。如果没有,用表单实例替换this。我将Y位置设置为与lblInfo相同,因此LinkLabel出现在它旁边。根据需要调整lblInfo.Margin.Rightdetails.Margin.Left

details.Margin.Left = 5;
details.Location = new Point(
     lblInfo.Location.X + lblInfo.Width + lblInfo.Margin.Right + details.Margin.Left,
     lblInfo.Location.Y
 );
this.Controls.Add(details);

更新:改变padding使用Margin(谢谢Anthony)