C# LinkLabelの使い方

C#サンプルコードプログラミング

概要説明

リンク表示のように見えるコントロールのサンプルです。

例えばGoogleと表示されているリンクをクリックすると、Googleのページが表示される感じのものです。LinkLabelをシンプルに使うものと、ある程度、動的に使うサンプルを作成しました。

①LinkLabelをシンプルに使うサンプル

GoogleをクリックするGoogleのページがブラウザに表示されるサンプルです。

 

画面にLinkLabelを配置して下さい。

LinkLabelのText、nameプロパティを設定して下さい。

NoTextname部品
1GooglelinkLabel1LinkLabel

linkLabel1のLinkClickedイベントをダブルクリックして作成して下さい。

プログラミング

/// <summary>
/// リンクラベル1クリック処理
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
    // 訪問済の表示にする
    linkLabel1.LinkVisited = true;

    // リンク先をブラウザで表示する
    System.Diagnostics.Process.Start("https://www.google.com");
}

実行結果

Googleをクリックします。

Googleのページが表示されます。

②LinkLabelを動的に使うサンプル

Google、Yahoo、Bingをクリックする各ページがブラウザに表示されるサンプルです。

画面にLinkLabelを3つ配置して下さい。

 

LinkLabelのText、nameプロパティを設定して下さい。

NoTextname部品
1linkLabel1linkLabel1LinkLabel
2linkLabel2linkLabel2LinkLabel
3linkLabel3linkLabel3LinkLabel

LinkClickedイベントの作成は不要です。

プログラムで起動時に追加します。

 

プログラミング

①画面起動時にLinkLabelの表示とリンク先を設定する

 リンク先はTagに設定しています。Tagはメモのように使えるプロパティです。

②画面起動時にLinkClickedイベントを追加する

③クリックされたリンクラベルを取得する

④リンク先をブラウザで表示する

/// <summary>
/// リンクラベルクリック処理
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void linkLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
    // クリックされたリンクラベルを取得する
    LinkLabel ll = ((LinkLabel)(sender));

    // 訪問済の表示にする
    ll.LinkVisited = true;

    // リンク先をブラウザで表示する
    System.Diagnostics.Process.Start(ll.Tag.ToString());
}

/// <summary>
/// 画面起動時処理
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Form1_Load(object sender, EventArgs e)
{
  // LinkLabelの表示とリンク先を設定する
    linkLabel1.Text = "Google";
    linkLabel1.Tag = "https://www.google.com";

    linkLabel2.Text = "Yahoo";
    linkLabel2.Tag = "https://www.yahoo.co.jp";

    linkLabel3.Text = "Bing";
    linkLabel3.Tag = "https://www.bing.com";

  // LinkClickedイベントを作成する
    this.linkLabel1.LinkClicked += new LinkLabelLinkClickedEventHandler(this.linkLabel_LinkClicked);
    this.linkLabel2.LinkClicked += new LinkLabelLinkClickedEventHandler(this.linkLabel_LinkClicked);
    this.linkLabel3.LinkClicked += new LinkLabelLinkClickedEventHandler(this.linkLabel_LinkClicked);

}

実行結果

Googleをクリックします。

Googleのページが表示されます。

Yahooをクリックします。

Yahooのページが表示されます。

Bingをクリックします。

Bingのページが表示されます。

以上です。

コメント

タイトルとURLをコピーしました