【问题标题】:get text of linklabel created at runtime获取在运行时创建的链接标签的文本
【发布时间】:2009-09-12 14:07:55
【问题描述】:

有人可以向我解释一下如何获取我在运行时创建的链接标签的 Text 属性吗?

我试过了:

字符串 str = e.Link.LinkData;

...但这只是显示一个空的消息框。

非常感谢:)

【问题讨论】:

  • e.Link.Description 也返回一个空白字符串。

标签: c# text get properties linklabel


【解决方案1】:

由于您的代码中有一个神秘的“e”,我假设您正尝试在 LinkLabel 的 LinkClicked 事件中执行此操作。为此,您需要将“sender”转换为 LinkLabel,如下所示:

private void linkLabel1_LinkClicked(object sender, 
    LinkLabelLinkClickedEventArgs e)
{
    LinkLabel lnklbl = (LinkLabel)sender;
    string str = lnklbl.Text;
}

【讨论】:

    【解决方案2】:

    编辑:既然我们知道e 的类型,请尝试:

    string str = e.Link.Description;
    

    如果LinkLabel.Link 没有足够的信息,您必须参考LinkLabel 本身。 可能是事件的发送者(如 MusiGenesis 所建议),但如果不是,我建议您使用 lambda 表达式或匿名方法订阅事件 - 这样您就可以捕获 @987654325 @ 并直接引用Text 属性。

    【讨论】:

    • private void llabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { string str = e.Text; } 是的,斯基特先生,我有。但是当我使用上面的代码时,它会在“文本”下出现一条弯曲的红线。
    • 如果您一开始就解释了e 的类型,那将会有所帮助。正在编辑...
    • 我刚试过这个,e.Link.Description返回一个空字符串。
    • 它可能由于答案的“捕获”部分而被接受。很难说。
    猜你喜欢
    • 2011-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-11
    相关资源
    最近更新 更多