C# LinkLabel Example: Windows Forms

Learn about the LinkLabel control and use it to create visual links.

LinkLabel. Hyperlinks are sometimes useful in Windows Forms programs. The LinkLabel control provides hyperlinks similar to those on web pages. This control has some complexities—it must be initialized in C# code.

Start. Please add a new LinkLabel control to your form by double-clicking or dragging from the Toolbox in Visual Studio. Next, you can right-click on the LinkLabel and adjust some of its properties.

To implement the functionality in this example, you need to create a Load event, which you can do by double-clicking on the enclosing form. Then, double-click on the LinkLabel instance to create the LinkClicked event handler.

Info: The Form1_Load method is executed when the program begins. At this stage, we create a new Link element.

Tip: Link elements are stored in the Links collection on a LinkLabel instance. We call the Add method to store the LinkLabel.

Object: The LinkData reference is of an object type—you can store anything there and use it through casting.

LinkClicked: We simply store a string in the location and then, in LinkClicked, we access the Link.LinkData from the parameter "e" and cast it.

Example that uses LinkLabel: C# using System.Diagnostics; using System.Windows.Forms; namespace WindowsFormsApplication13 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, System.EventArgs e) { // Add a link to the LinkLabel. LinkLabel.Link link = new LinkLabel.Link(); link.LinkData = ""; linkLabel1.Links.Add(link); } private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { // Send the URL to the operating system. Process.Start(e.Link.LinkData as string); } } }

Text. The Text property on the LinkLabel determines what text will be shown when the LinkLabel is displayed on a Form. This is a property that you will want to set every time you add a new LinkLabel.

Tip: Using the Links collection, you can create multiple links in the same text.


Link colors. You can adjust the active, default and visited link colors in Windows Forms. Also, you can set the disabled color. The active color is the one shown when the user is actively clicking on a link.

And: The visited link color appears once the link has been previously clicked. This is often purple.

Multiple links. As noted, you can have multiple links in the same LinkLabel. This is useful if you want to have a LinkLabel with two clickable links. To do this, add two Link objects to the LinkLabel in the Load event.

Tip: You should specify the lexical position of the links. We do this by specifying the index of the start and the length in characters.

Then: In LinkClicked, you can acquire the LinkData from the clicked link in the same way as in the example shown.

Summary. The LinkLabel is used internally in your program or to launch a web browser. The Links collection is confusing at first but once the concept of multiple links per LinkLabel is understood, it is clear.
Dot Net Perls
© 2007-2020 Sam Allen. Every person is special and unique. Send bug reports to