未分類

C# Action デリゲートを扱う (3)

準備

(なし)

デザイン

1. フォーム (Form1) にボタン (button1) を配置します。
2. フォーム (Form1) にリストボックス (listBox1) を配置します。

サンプルコード (C#)

// 名前空間の追加
// (なし)

// コード
private void button1_Click(object sender, EventArgs e)
{
  List<string> ListData = new List<string>() { "NEC", "SONY", "DELL" };
  Action<string> ListAction = new Action<string>(ListOut);
  ListData.ForEach(ListAction);
}

private void ListOut(string sListData)
{
  listBox1.Items.Add(sListData);
}

解説

Action デリゲートを扱うサンプルです。今回は List のメソッド ForEach と組み合わせて扱ってみます。これまでのサンプルとほぼ同じですが、今回は Action デリゲート型の変数 ListAction を List の メソッド ForEach に渡しています。そして、ここが難しいところなのですが、メソッド ListOut がとる引数 sListData の値も同時に渡されているようです。これは List.ForEach の機能なのでしょう。

結果

動作確認環境

Visual Studio 2015 Professional (C# 6.0)

-未分類