[C#][Windows Formsアプリ][ComboBox] Itemsプロパティで項目を追加、削除、取得する

スポンサーリンク

はじめに

ComboBox.Items プロパティは、コンボボックスに表示する項目のコレクションを管理するための基本的なプロパティです。
一覧の中身を直接操作することができ、最もよく使われる要素のひとつです。

 

Itemsプロパティとは?

Items プロパティは、コンボボックスに含まれる全ての項目を表すコレクション(ObjectCollection)です。
このプロパティを使うことで、項目の追加、削除、検索、取得ができます。

💡 ポイント:
Itemsobject 型のコレクションなので、文字列以外のオブジェクトも追加可能です。
ただし、表示時には ToString() の結果が使われます。

 

主な操作

メンバー 説明
Items.Add(object item) 項目を1つ追加します。
Items.AddRange(object[] items) 複数の項目をまとめて追加します。
Items.Insert(int index, object item) 指定位置に項目を挿入します。
Items.Remove(object item) 指定した項目を削除します。
Items.RemoveAt(int index) 指定したインデックスの項目を削除します。
Items.Clear() すべての項目を削除します。
Items.Count 項目の数を取得します。

 

基本的な使い方

項目を追加する

comboBox1.Items.Add("Python");
comboBox1.Items.Add("C#");
comboBox1.Items.Add("Java");

複数の項目をまとめて追加する

comboBox1.Items.AddRange(new string[] { "東京", "大阪", "名古屋", "福岡" });

項目を削除する

comboBox1.Items.Remove("大阪");
comboBox1.Items.RemoveAt(0); // 先頭の項目を削除

すべての項目をクリアする

comboBox1.Items.Clear();

項目数を取得する

int count = comboBox1.Items.Count;
MessageBox.Show($"現在の項目数: {count}");

 

実用例:リストの更新

using System;
using System.Windows.Forms;

namespace ComboBoxItemsSample
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void buttonLoad_Click(object sender, EventArgs e)
        {
            comboBox1.Items.Clear();
            comboBox1.Items.AddRange(new string[] { "りんご", "みかん", "ぶどう", "もも" });
        }

        private void buttonAdd_Click(object sender, EventArgs e)
        {
            comboBox1.Items.Add("スイカ");
        }

        private void buttonRemove_Click(object sender, EventArgs e)
        {
            if (comboBox1.SelectedItem != null)
            {
                comboBox1.Items.Remove(comboBox1.SelectedItem);
            }
        }
    }
}

この例では、ボタン操作で項目の追加・削除・再読み込みができます。
UIを通じてItemsを動的に操作する練習に最適です。

 

データバインドとの違い

Items による操作は「手動管理」であり、コード内で直接リストを操作します。
一方、DataSource プロパティを使うと、配列やDataTableなどをまとめてバインドできます。

項目管理方法 特徴
Items シンプル・即時反映・少量データに向く
DataSource 大量データやオブジェクトのバインドに向く
// DataSourceを使う場合
comboBox1.DataSource = new string[] { "北海道", "東北", "関東", "関西", "九州" };

 

注意点

  • ItemsDataSource は同時に使えません。
  • オブジェクトを追加した場合、表示にはそのクラスの ToString() の戻り値が使われます。
  • UIスレッド以外から Items を操作すると例外が発生するので注意。

 

まとめ

  • Items はコンボボックスの項目リストを直接管理するための基本プロパティ
  • Add() / Remove() / Clear() を使って動的に項目を操作できる
  • 少量データ・手動更新の用途に最適
  • 大量データやデータベース連携では DataSource を検討
Please follow and like us:

コメント

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