//================================================================================================= // C#のリストボックス // リストボックス内の項目を選択するとラベルの文字が変化するプログラム。 // 項目を選択した時に「SelectedIndexChanged」をEventHandlerで登録することでリスト項目を選択した // ときに処理を行うプログラムを作成できる。 // // リストボックスの項目は「Items.Add」で追加出来る。 // // 参考文献:やさしいC#(p188) // 2012/11/14/オワタ //================================================================================================= using System; using System.Windows.Forms; class MyListBox : Form { private Label mLabel; //< ラベル private ListBox mListBox; //< リストボックス //< メイン関数 public static void Main() { Application.Run(new MyListBox()); } //< コンストラクタ public MyListBox() { //< リストに表示する文字 String[] str = { "絢辻さん", "森島先輩", "橘さん", "美也", "ふかふか", "七咲", "肉", "もじゃ子" }; //< Window設定 this.Text = "リストボックス"; this.Width = 250; this.Height = 200; //< ラベル生成 mLabel = new Label(); mLabel.Text = "いらっしゃいませ"; mLabel.Dock = DockStyle.Top; //< リストボックス生成 mListBox = new ListBox(); //< リストボックスの項目を追加 for (int i = 0; i < str.Length; i++) { mListBox.Items.Add(str[i]); } //< リストボックスの位置をラベルの真下に設置 mListBox.Top = mLabel.Bottom; mLabel.Parent = this; mListBox.Parent = this; //< リストボックスの項目が選択された時に処理する関数を登録 mListBox.SelectedIndexChanged += new EventHandler(listBoxSelectedIndexChanged); } //< リストボックスの項目が選択された時に処理される関数 public void listBoxSelectedIndexChanged(Object obj, EventArgs e) { ListBox tmp = (ListBox)obj; mLabel.Text = tmp.Text + "を選びました。"; } };