C# 如何管理生成的链接标签?

C# 如何管理生成的链接标签?,c#,C#,我已经使用一些代码生成了一个链接标签列表,但是我不知道当你点击链接标签时,如果它们在我的代码运行之前还不存在,我该如何让它做些什么。 这是我的密码 var n = File.ReadLines(HorseFile).Count(); var HC = 0; for (int i = 0; i < n; i++) { string HorseName = File.ReadLines(HorseFi

我已经使用一些代码生成了一个链接标签列表,但是我不知道当你点击链接标签时,如果它们在我的代码运行之前还不存在,我该如何让它做些什么。 这是我的密码

        var n = File.ReadLines(HorseFile).Count();

        var HC = 0;

        for (int i = 0; i < n; i++)
        {

            string HorseName = File.ReadLines(HorseFile).ElementAtOrDefault(HC);
            LinkLabel HorseLabel = new LinkLabel();
            HorseLabel.Left = 35;
            HorseLabel.Top = (i + 4) * 21;
            HorseLabel.Text = String.Format(HorseName, HC);
            this.Controls.Add(HorseLabel);

            HC++;
        }
var n=File.ReadLines(HorseFile.Count();
var HC=0;
对于(int i=0;i

…它从代码前面创建的文本文件中生成列表,作为链接标签,因此我知道它可以工作,我希望它执行MessageBox.Show()之类的操作;显示链接标签的内容。我该怎么做?有人能给我举个例子吗?

正如Alejandro在评论中所建议的那样,连接您的LinkLabel事件:

    private void button1_Click(object sender, EventArgs e)
    {
        string HorseFile = @"C:\Users\mikes\Documents\SomeFile.txt";

        int count = 0;
        foreach(string HorseName in File.ReadLines(HorseFile))
        {
            LinkLabel HorseLabel = new LinkLabel();
            HorseLabel.Left = 35;
            HorseLabel.Top = (count + 4) * 21;
            HorseLabel.Text = HorseName;

            HorseLabel.LinkClicked += HorseLabel_LinkClicked; // wire up the event

            this.Controls.Add(HorseLabel);
            count++;
        }
    }

    private void HorseLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
    {
        LinkLabel Horse = (LinkLabel)sender;
        MessageBox.Show(Horse.Text);
    }

将事件处理程序附加到
单击事件。链接标签在我运行代码之前不存在,因此我有点不知道下一步要去哪里,我的表单一开始是空白的。