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

C# 如何将链接标签附加到现有标签?,c#,.net,C#,.net,我在面板内有一个标签,用于显示简单文本。现在我有了一个动态添加的链接标签,可以显示更多信息。如何在运行时将此链接标签显示在标签文本旁边?例如,将显示标签 添加一条记录 我需要在标签文本旁边显示一个链接标签“查看其他详细信息” 添加一条记录。查看其他详细信息 我的代码如下,但它与现有的标签文本重叠。谢谢你的帮助 LinkLabel details = new LinkLabel(); details.Text = "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);

为什么要尝试将链接标签添加到标签?将链接标签添加到与标签相同的表单中,并适当设置链接标签的位置

在下面的示例中,我假设代码是从表单的类调用的(如果使用的是面板,则调用到面板)。如果没有,请用表单实例替换
。我将Y位置设置为与
lblInfo
相同的位置,因此链接标签显示在它旁边。根据需要调整
lblInfo.Margin.Right
details.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);

更新:更改了填充以使用边距(谢谢Anthony)。

是否在
面板中添加控件?显然,您在最后一行指定了
标签。什么是变量
详细链接
?您的意思是将
lblInfo.Controls.Add(details)
放在那里吗?标签已经添加到面板中。可能我也需要将链接标签添加到面板,而不是标签。对不起,我现在修改了最后一行。@Jyina-或者您可以动态添加两个标签(“添加了记录”和“查看其他详细信息”)。但你们仍然需要解决标签尺寸的问题。我会添加空LinkLabel并在运行时更新它。使用与控件关联的边距,而不是填充变量:
lbleInfo.Location.X+lbleInfo.Margin.Right+details.Margin.Left