マルチカラムのリストコントロールに項目を設定する場合、カラムを追加する必要があります。ListItem オブジェクトをコレクションに追加する場合に使用するカラムは ListSubItemColumn です。
次に Items プロパティから取得できる項目コレクションに ListItem オブジェクトを追加することで項目を設定します。
サブ項目を追加するには、各 ListItem オブジェクトの SubItems プロパティが参照する SubItemCollection に追加されたカラム数に応じて、SubItem オブジェクトを追加します。
Visual Studio のデザインページ上でカラムを設定するにはプロパティウィンドウの Columns プロパティを参照し、
をクリックして表示されるコレクションエディターを使用してカラムコレクションに ListSubItemColumn を追加します。
項目を設定するにはプロパティウィンドウの Items プロパティを参照し、
をクリックして表示されるコレクションエディターを使用して項目コレクションに項目を追加します。サブ項目を設定するには、Items コレクションエディターのプロパティウィンドウから SubItems プロパティを参照し、
をクリックして表示されるコレクションエディターを使用してサブ項目コレクションにサブ項目を追加します。
次のサンプルコードは、3列のデータを持つ項目をコントロールに追加します。
Imports GrapeCity.Windows.InputMan
GcListBox.Width = 270
' サブ項目用のカラムを作成します。
Dim column1 As New ListSubItemColumn()
column1.Header = "所在地"
Dim column2 As New ListSubItemColumn()
column2.Header = "電話番号"
Dim column3 As New ListSubItemColumn()
column3.Header = "FAX番号"
' カラムをコントロールに追加します。
GcListBox1.Columns.Add(column1)
GcListBox1.Columns.Add(column2)
GcListBox1.Columns.Add(column3)
' 1つめの項目を作成、追加します。
Dim item1 As New ListItem()
item1.SubItems.Add(New SubItem("仙台本社"))
item1.SubItems.Add(New SubItem("022-777-8210"))
item1.SubItems.Add(New SubItem("022-777-8231"))
GcListBox1.Items.Add(item1)
' 2つめの項目を作成、追加します。
Dim item2 As New ListItem()
item2.SubItems.Add(New SubItem("関東支社"))
item2.SubItems.Add(New SubItem("048-222-1200"))
item2.SubItems.Add(New SubItem("048-222-1211"))
GcListBox1.Items.Add(item2)
' 3つめの項目を作成、追加します。
Dim item3 As New ListItem()
item3.SubItems.Add(New SubItem("大阪支店"))
item3.SubItems.Add(New SubItem("06-6222-2560"))
item3.SubItems.Add(New SubItem("06-6222-2570"))
GcListBox1.Items.Add(item3)
' 4つめの項目を作成、追加します。
Dim item4 As New ListItem()
item4.SubItems.Add(New SubItem("名古屋営業所"))
item4.SubItems.Add(New SubItem("052-586-6930"))
item4.SubItems.Add(New SubItem("052-551-0892"))
GcListBox1.Items.Add(item4)
using GrapeCity.Windows.InputMan;
GcListBox.Width = 270;
// サブ項目用のカラムを作成します。
ListSubItemColumn column1 = new ListSubItemColumn();
column1.Header = "所在地";
ListSubItemColumn column2 = new ListSubItemColumn();
column2.Header = "電話番号";
ListSubItemColumn column3 = new ListSubItemColumn();
column3.Header = "FAX番号";
// カラムをコントロールに追加します。
GcListBox1.Columns.Add(column1);
GcListBox1.Columns.Add(column2);
GcListBox1.Columns.Add(column3);
// 1つめの項目を作成、追加します。
ListItem item1 = new ListItem();
item1.SubItems.Add(new SubItem("仙台本社"));
item1.SubItems.Add(new SubItem("022-777-8210"));
item1.SubItems.Add(new SubItem("022-777-8231"));
GcListBox1.Items.Add(item1);
// 2つめの項目を作成、追加します。
ListItem item2 = new ListItem();
item2.SubItems.Add(new SubItem("関東支社"));
item2.SubItems.Add(new SubItem("048-222-1200"));
item2.SubItems.Add(new SubItem("048-222-1211"));
GcListBox1.Items.Add(item2);
// 3つめの項目を作成、追加します。
ListItem item3 = new ListItem();
item3.SubItems.Add(new SubItem("大阪支店"));
item3.SubItems.Add(new SubItem("06-6222-2560"));
item3.SubItems.Add(new SubItem("06-6222-2570"));
GcListBox1.Items.Add(item3);
// 4つめの項目を作成、追加します。
ListItem item4 = new ListItem();
item4.SubItems.Add(new SubItem("名古屋営業所"));
item4.SubItems.Add(new SubItem("052-586-6930"));
item4.SubItems.Add(new SubItem("052-551-0892"));
GcListBox1.Items.Add(item4);
<im:GcListBox Width="270">
<im:GcListBox.Columns>
<im:ListSubItemColumn Header="所在地" />
<im:ListSubItemColumn Header="電話番号" />
<im:ListSubItemColumn Header="FAX番号" />
</im:GcListBox.Columns>
<im:ListItem>
<im:SubItem Content="仙台本社" />
<im:SubItem Content="022-777-8210" />
<im:SubItem Content="022-777-8231" />
</im:ListItem>
<im:ListItem>
<im:SubItem Content="関東支社" />
<im:SubItem Content="048-222-1200" />
<im:SubItem Content="048-222-1211" />
</im:ListItem>
<im:ListItem>
<im:SubItem Content="大阪支店" />
<im:SubItem Content="06-6222-2560" />
<im:SubItem Content="06-6222-2570" />
</im:ListItem>
<im:ListItem>
<im:SubItem Content="名古屋営業所" />
<im:SubItem Content="052-586-6930" />
<im:SubItem Content="052-551-0892" />
</im:ListItem>
</im:GcListBox>

(図):上記サンプルコードの実行結果