ListItemオブジェクトの追加による項目の設定 |
このトピックでは、マルチカラムのリストコントロールに、ListItem オブジェクトをコレクションに追加することで項目を設定する方法を解説します。
マルチカラムのリストコントロールに項目を設定する場合、カラムを追加する必要があります。ListItem オブジェクトをコレクションに追加する場合に使用するカラムは ListSubItemColumn です。
次に Items プロパティから取得できる項目コレクションに ListItem オブジェクトを追加することで項目を設定します。
サブ項目を追加するには、各 ListItem オブジェクトの SubItems プロパティが参照する SubItemCollection に追加されたカラム数に応じて、SubItem オブジェクトを追加します。
メモ |
---|
ListItem オブジェクトをコレクションに追加する場合には、AutoGenerateColumns プロパティを True に設定してもカラムは自動生成されません。 |
Visual Studio のデザインページ上でカラムを設定するにはプロパティウィンドウの Columns プロパティを参照し、をクリックして表示されるコレクションエディターを使用してカラムコレクションに ListSubItemColumnを追加します。
項目を設定するにはプロパティウィンドウの Items プロパティを参照し、をクリックして表示されるコレクションエディターを使用して項目コレクションに項目を追加します。 サブ項目を設定するには、Items コレクションエディターのプロパティウィンドウから SubItems プロパティを参照し、をクリックして表示されるコレクションエディターを使用してサブ項目コレクションにサブ項目を追加します。
次のサンプルコードは、3列のデータを持つ項目をコントロールに追加します。
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);