I'm creating LinkLabel in Form2 and Form3 with the same code. Form2 and Form3 are separate classes so the names don't interferer. They are both created, but in the Form 3 links open, in the Form2 nothing happens.
This is the code for Form2
public partial class Form2 : Form
{
  public void createFormEntry(List<string> videoId)
  {
    LinkLabel link = new LinkLabel();
    link.Name = "link";
    link.AutoSize = true;
    link.Location = new Point(76, 8);
    link.Text = "www.example.com";
    link.LinkClicked += new LinkLabelLinkClickedEventHandler(link_LinkClicked);
    this.Controls.Add(link);
  }   
    private void link_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
    {
        System.Diagnostics.Process.Start("http://www.example.com");
    }
}
And this is for the Form3
public partial class Form3 : Form
{
  private void createFormEntry(Feed<Video> videoFeed)
  {
    LinkLabel link = new LinkLabel();
    link.Name = "link";
    link.AutoSize = true;
    link.Location = new Point(76, 8);
    link.Text = "www.example.com";
    link.LinkClicked += new LinkLabelLinkClickedEventHandler(link_LinkClicked);
    this.Controls.Add(link);
  }
    private void link_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
    {
        System.Diagnostics.Process.Start("http://www.example.com");
    }
}
They are in different classes. Form2 opens before Form3. What could be wrong?
EDIT: now when I added more code, I see in Form2 createFormEntry is public and in Form3 it is set as private. Could that be a reason?
 
    