NonSoft

ListView/TreeView/ListBox/ComboBox
のサンプル(C#.NET)


 サンプル(ソース/コード)
<このサンプルの概要>
C#.NETのリスト系コントロール(ListView/TreeView/ListBox/ComboBox/DataGridView)の
良く使う技(行追加/行挿入/行変更/行削除/行取得/行選択...)をサンプルソースとして記述します。

コピー&ペーストしてお試しください。VB.NET版もありますので比較出来ます。

TreeViewのサンプル(VB.NET) TreeViewのサンプル(C#.NET)
ListViewのサンプル(VB.NET) ListViewのサンプル(C#.NET)
ListBoxのサンプル(VB.NET)  ListBoxのサンプル(C#.NET)
ComboBoxのサンプル(VB.NET) ComboBoxのサンプル(C#.NET)

<関連情報>
ReadOnlyプロパティ付きComboBoxのサンプル(VB.NET)
ListBoxでドラッグ&ドロップするサンプル(VB.NET)
ListBoxでドラッグ&ドロップするサンプル(C#.NET)
DataGridViewに便利なメソッドを追加するサンプル(VB.NET)
DataGridViewに便利なメソッドを追加するサンプル(C#.NET)
DataGridViewを使用する上でよく使う技(VB.NET)
DataGridViewを使用する上でよく使う技(C#.NET)

★ComboBoxのサンプル(C#.NET)
// ComboBoxのサンプル
// ComboBoxの項目追加 
comboBox1.Items.Add("ComboBox追加1");
comboBox1.Items.Add("ComboBox追加2");

// ComboBoxの項目挿入(先頭項目のINDEXは0)
comboBox1.Items.Insert(0, "ComboBox挿入1");
comboBox1.Items.Insert(1, "ComboBox挿入2");

// ComboBoxの項目変更(先頭項目のINDEXは0)
comboBox1.Items[0] = "ComboBox変更1";
comboBox1.Items[1] = "ComboBox変更2";

// ComboBoxの項目削除(先頭項目のINDEXは0)
comboBox1.Items.RemoveAt(0);
comboBox1.Items.RemoveAt(1);

// ComboBoxの項目取得(先頭項目のINDEXは0)
System.Diagnostics.Debug.WriteLine(comboBox1.Items[0]);
System.Diagnostics.Debug.WriteLine(comboBox1.Items[1]);

// ComboBoxの選択項目INDEX設定(先頭項目のINDEXは0)
comboBox1.SelectedIndex = 0;

// ComboBoxの選択項目INDEX取得(先頭項目のINDEXは0)
System.Diagnostics.Debug.WriteLine(comboBox1.SelectedIndex);

★ListBoxのサンプル(C#.NET)
// ListBoxのサンプル
// ListBoxの行追加 
listBox1.Items.Add("ListBox追加1");
listBox1.Items.Add("ListBox追加2");

// ListBoxの行挿入(先頭行のINDEXは0)
listBox1.Items.Insert(0, "ListBox挿入1");
listBox1.Items.Insert(1, "ListBox挿入2");

// ListBoxの行変更(先頭行のINDEXは0)
listBox1.Items[0] = "ListBox変更1";
listBox1.Items[1] = "ListBox変更2";

// ListBoxの行削除(先頭行のINDEXは0)
listBox1.Items.RemoveAt(0);
listBox1.Items.RemoveAt(1);

// ListBoxの行取得(先頭行のINDEXは0)
System.Diagnostics.Debug.WriteLine(listBox1.Items[0]);
System.Diagnostics.Debug.WriteLine(listBox1.Items[1]);

// ListBoxの選択行INDEX設定(先頭行のINDEXは0)
listBox1.SelectedIndex = 0;

// ListBoxの選択行INDEX取得(先頭行のINDEXは0)
System.Diagnostics.Debug.WriteLine(listBox1.SelectedIndex);

★ListViewのサンプル(C#.NET)
// ListViewのサンプル
String[] col = new String[2];
ListViewItem itm;

// ListViewのカラムヘッダー設定
listView1.View = View.Details;
ColumnHeader col1 = new ColumnHeader();
ColumnHeader col2 = new ColumnHeader();
col1.Text = "カラム1";
col2.Text = "カラム2";
col1.Width = 150;
col2.Width = 150;
ColumnHeader[] colHeader = new ColumnHeader[] { col1, col2 };
listView1.Columns.AddRange(colHeader);

// ListViewの行追加 
col[0] = "ListView追加1カラム1";
col[1] = "ListView追加1カラム2";
itm = new ListViewItem(col);
listView1.Items.Add(itm);
col[0] = "ListView追加2カラム1";
col[1] = "ListView追加2カラム2";
itm = new ListViewItem(col);
listView1.Items.Add(itm);

// ListViewの行挿入(先頭行のINDEXは0)
col[0] = "ListView挿入1カラム1";
col[1] = "ListView挿入1カラム2";
itm = new ListViewItem(col);
listView1.Items.Insert(0, itm);
col[0] = "ListView挿入2カラム1";
col[1] = "ListView挿入2カラム2";
itm = new ListViewItem(col);
listView1.Items.Insert(1, itm);

// ListViewの行変更(先頭行のINDEXは0)
col[0] = "ListView変更1カラム1";
col[1] = "ListView変更1カラム2";
itm = new ListViewItem(col);
listView1.Items[0] = itm;
col[0] = "ListView変更2カラム1";
col[1] = "ListView変更2カラム2";
itm = new ListViewItem(col);
listView1.Items[1] = itm;

// ListViewの行削除(先頭行のINDEXは0)
listView1.Items.RemoveAt(0);
listView1.Items.RemoveAt(1);

// ListViewのセル取得(先頭行のINDEXは0,先頭カラムのINDEXは0)
System.Diagnostics.Debug.WriteLine(
    listView1.Items[0].SubItems[0].Text);
System.Diagnostics.Debug.WriteLine(
    listView1.Items[0].SubItems[1].Text);
System.Diagnostics.Debug.WriteLine(
    listView1.Items[1].SubItems[0].Text);
System.Diagnostics.Debug.WriteLine(
    listView1.Items[1].SubItems[1].Text);

// ListViewの選択行INDEX設定(先頭行のINDEXは0)
listView1.Items[0].Selected = true;
listView1.Select();

// ListViewの選択行INDEX取得(最初の選択項目のINDEXは0)
System.Diagnostics.Debug.WriteLine(listView1.SelectedItems[0].Index);

★TreeViewのサンプル(C#.NET)
// TreeViewのサンプル
// TreeViewの親ノード追加 
treeView1.Nodes.Add("TreeView親追加1");
treeView1.Nodes.Add("TreeView親追加2");

// TreeViewの親ノード挿入(先頭ノードのINDEXは0)
treeView1.Nodes.Insert(0, "TreeView親挿入1");
treeView1.Nodes.Insert(1, "TreeView親挿入2");

// TreeViewの子ノード追加(先頭ノードのINDEXは0);
treeView1.Nodes[0].Nodes.Add("TreeView子追加1");
treeView1.Nodes[0].Nodes.Add("TreeView子追加2");

// TreeViewの子ノード挿入(先頭ノードのINDEXは0)
treeView1.Nodes[1].Nodes.Insert(0, "TreeView子挿入1");
treeView1.Nodes[1].Nodes.Insert(1, "TreeView子挿入2");

// TreeViewの親ノード変更(先頭ノードのINDEXは0)
treeView1.Nodes[0].Text = "TreeView親変更1";
treeView1.Nodes[1].Text = "TreeView親変更2";

// TreeViewの子ノード変更(先頭ノードのINDEXは0)
treeView1.Nodes[0].Nodes[0].Text = "TreeView子変更1";
treeView1.Nodes[0].Nodes[1].Text = "TreeView子変更2";

// TreeViewの親ノード削除(先頭ノードのINDEXは0)
treeView1.Nodes[0].Remove();
treeView1.Nodes[1].Remove();

// TreeViewの子ノード削除(先頭ノードのINDEXは0)
treeView1.Nodes[0].Nodes[0].Remove();
treeView1.Nodes[0].Nodes[1].Remove();

// TreeViewの親ノード取得(先頭ノードのINDEXは0)
System.Diagnostics.Debug.WriteLine(treeView1.Nodes[0].Text);
System.Diagnostics.Debug.WriteLine(treeView1.Nodes[1].Text);

// TreeViewの子ノード取得(先頭ノードのINDEXは0)
System.Diagnostics.Debug.WriteLine(treeView1.Nodes[0].Nodes[0].Text);
System.Diagnostics.Debug.WriteLine(treeView1.Nodes[0].Nodes[1].Text);

// TreeViewの選択ノード設定(先頭ノードのINDEXは0)
treeView1.SelectedNode = treeView1.Nodes[0];
treeView1.Select();

// TreeViewの選択ノード取得(先頭ノードのINDEXは0)
System.Diagnostics.Debug.WriteLine(treeView1.SelectedNode.Index);