C# 開発

【C# ListBox】複数列で表示する

準備

(なし)

デザイン

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

サンプルコード (C#)

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

        private void Form1_Load(object sender, EventArgs e)
        {
        }

        private void button1_Click(object sender, EventArgs e)
        {
            listBox1.MultiColumn = true;

            foreach (var idx in Enumerable.Range(0, 500))
            {
                listBox1.Items.Add(idx.ToString());
            }
        }
    }
}

解説

1 列目の表示行数に達した場合に、次の列から表示します。これを表示するアイテム数分繰り返します。リストボックスの Anchor 設定をして、フォームのリサイズによって、リストボックスのサイズが変わるようにした場合、各列に表示されるアイテム数が変化します。

結果

動作確認環境

Visual Studio 2022 Professional (.NET8 C#12)

ログ

初版:2016.05.16 Visual Studio 2015 Professional (C# 6.0)

-C# 開発