我已经使用一些代码生成了一个链接标签列表,但是如果你点击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();显示链接标签的内容。我该怎么做呢?谁能举个例子呢?
答案 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);
}