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

时间:2014-07-18 15:46:58

标签: c# .net

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

添加了一条记录。

我需要在标签文字旁边显示一个链接标签“查看其他详细信息”。

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

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

        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);

1 个答案:

答案 0 :(得分:2)

您为什么要尝试将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);

更新:更改填充以使用保证金(感谢安东尼)。