codeLinkLabel控件,它能夠向Windows窗體應用程序中添加Web樣式的鏈接,
用戶可以將LinkLabel中的文本(Text值)的一部分設置為指向網頁的鏈接。
LinkLabel控件常用屬性
ActiveLinkColor : 表示單擊鏈接時的顏色
LinkColor: 表示鏈接的初始顏色
VisitedLinkColor: 表示鏈接點擊之後的顏色
DisabledLinkColor: 表示鏈接被禁止使用時的顏色
LinkArea: 表示顯示為超級鏈接的文本區域
LinkBehaviour: 表示鏈接的行為
Dock: 表示鏈接在容器中的布局
一個使用LinkArea的例子:如果需要把"測試鏈接效果"中的"鏈接"兩個字顯示為超級鏈接
則示例代碼如下:
linkLabel1.LinkArea = new LinkArea(2, 2);
LinkLabel控件常用方法
Focus方法: 該方法表示控件設置輸入焦點。
FindForm方法: 該方法表示檢索控件所在的窗體
LinkClicked事件:當用戶單擊控件中的鏈接時,處理LinkClicked事件以執行任務,將Link LabelLinkClickedEventArgs類的實例傳遞給LinkClicked事件的處理程序,該實例包含與所單擊的鏈接關聯的 LinkLabel.Link對象。可以使用在LinkLabel.Link類的LinkData屬性中指定的信息確定單擊了哪個鏈接或單擊該鏈接後要執行的任務類型。
如果需要點擊一個鏈接打開一個網頁,示例代碼如下:
view plaincopy to clipboardprint?
private void lbllink_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
//調用IE浏覽器
System.Diagnostics.Process.Start("iexplore.exe", "http://www.google.cn");
//調用系統默認的浏覽器
System.Diagnostics.Process.Start( "http://www.google.cn");
}
private void lbllink_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
//調用IE浏覽器
System.Diagnostics.Process.Start("iexplore.exe", "http://www.google.cn");
//調用系統默認的浏覽器
System.Diagnostics.Process.Start( "http://www.google.cn");
}
也可以這樣編寫代碼:
view plaincopy to clipboardprint?
private void lbllink_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.lbllink_LinkClicked.Links[0].LinkData = "http://www.sina.com";
System.Diagnostics.Process.Start(e.Link.LinkData.ToString());
}
private void lbllink_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.lbllink_LinkClicked.Links[0].LinkData = "http://www.sina.com";
System.Diagnostics.Process.Start(e.Link.LinkData.ToString());
}
在LinkLable控件中可以添加多個鏈接,示例如下:
view plaincopy to clipboardprint?
private void Form1_Load(object sender, EventArgs e)
{
lbllink.Text = "csdn Win 百度 谷歌 YAHOO";
lbllink.Links.Add(0, 4, "http://www.csdn.net/");
lbllink.Links.Add(9, 2, "http://www.baidu.com/");
lbllink.Links.Add(12, 2, "http://www.google.cn/");
lbllink.Links.Add(15, 5, "http://www.yahoo.com.cn/");
}
private void Form1_Load(object sender, EventArgs e)
{
lbllink.Text = "csdn Win 百度 谷歌 YAHOO";
lbllink.Links.Add(0, 4, "http://www.csdn.net/");
lbllink.Links.Add(9, 2, "http://www.baidu.com/");
lbllink.Links.Add(12, 2, "http://www.google.cn/");
lbllink.Links.Add(15, 5, "http://www.yahoo.com.cn/");
}
點擊其中某個鏈接打開網頁的代碼如下:
view plaincopy to clipboardprint?
private void lbllink_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
lbllink.Links[lbllink.Links.IndexOf(e.Link)].Visited = true;
string targetUrl = e.Link.LinkData as string;
if (string.IsNullOrEmpty(targetUrl))
MessageBox.Show("沒有鏈接地址!");
else
System.Diagnostics.Process.Start("targetUrl");
}
private void lbllink_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
lbllink.Links[lbllink.Links.IndexOf(e.Link)].Visited = true;
string targetUrl = e.Link.LinkData as string;
if (string.IsNullOrEmpty(targetUrl))
MessageBox.Show("沒有鏈接地址!");
else
System.Diagnostics.Process.Start("targetUrl");
}