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

时间:2017-06-22 13:54:28

标签: c#

我已经使用一些代码生成了一个链接标签列表,但是如果你点击LinkLabel我还不知道如何做到这一点,直到我的代码还没有存在跑。 这是我的代码

        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++;
        }

...它从前面在代码中创建的文本文件生成列表作为链接标签,所以首先我知道它的工作原理我想让它做像MessageBox.Show();显示链接标签的内容。我该怎么做呢?谁能举个例子呢?

1 个答案:

答案 0 :(得分:1)

正如Alejandro在评论中所建议的,连接LinkLabel的LinkClicked()事件:

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