ListView追加/参照/削除(C#/VB.NET)
2016-02-22 12:49
459 查看
ListViewに行追加/行変更(行取得)/行削除するサンプル(ソース/コード)です。
忘れやすいのでメモって置きます。
全ての行(項目)を削除する時は、ListView1.Items.Clear()を使用します。
ListView追加/参照/削除(C#/VB.NET)
2010年06月19日ListViewに行追加/行変更(行取得)/行削除するサンプル(ソース/コード)です。
忘れやすいのでメモって置きます。
全ての行(項目)を削除する時は、ListView1.Items.Clear()を使用します。
' ----------------------------------------------------------- ' ListViewの追加/変更(取得)/削除のサンプル(VB.NET/VS2005) Private Sub Form1_Load( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load ' ヘッダー初期化 ListView1.Items.Clear() ListView1.FullRowSelect = True ListView1.GridLines = True ListView1.View = View.Details Dim column1 As ColumnHeader = New ColumnHeader Dim column2 As ColumnHeader = New ColumnHeader Dim column3 As ColumnHeader = New ColumnHeader column1.Text = "Hour" column2.Text = "Minute" column3.Text = "Second" Dim colHeaderRegValue() As ColumnHeader = _ {column1, column2, column3} ListView1.Columns.AddRange(colHeaderRegValue) End Sub Private Sub Button1_Click( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click ' 選択行特定 Dim intRow As Integer = -1 If ListView1.SelectedItems.Count > 0 Then intRow = ListView1.SelectedItems(0).Index End If If intRow < 0 Then ' 行追加 Dim citm(2) As String citm(0) = DateTime.Now.Hour citm(1) = DateTime.Now.Minute citm(2) = DateTime.Now.Second Dim ritm As ListViewItem = New ListViewItem(citm) ListView1.Items.Add(ritm) Else ' 行挿入 Dim citm(2) As String citm(0) = DateTime.Now.Hour citm(1) = DateTime.Now.Minute citm(2) = DateTime.Now.Second Dim ritm As ListViewItem = New ListViewItem(citm) ListView1.Items.Insert(intRow, ritm) ListView1.Select() End If End Sub Private Sub Button2_Click( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button2.Click ' 選択行特定 Dim intRow As Integer = -1 If ListView1.SelectedItems.Count > 0 Then intRow = ListView1.SelectedItems(0).Index End If If intRow < 0 Then Return ' 選択行更新 Dim citm(2) As String citm(0) = DateTime.Now.Hour citm(1) = DateTime.Now.Minute citm(2) = DateTime.Now.Second Dim ritm As ListViewItem = New ListViewItem(citm) ListView1.Items(intRow) = ritm ' 再選択 If ListView1.Items.Count > intRow Then ListView1.Items(intRow).Selected = True ListView1.Select() End If End Sub Private Sub Button3_Click( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button3.Click ' 選択行特定 Dim intRow As Integer = -1 If ListView1.SelectedItems.Count > 0 Then intRow = ListView1.SelectedItems(0).Index End If If intRow < 0 Then Return ' 選択行削除 ListView1.Items.RemoveAt(intRow) ' 再選択 If ListView1.Items.Count > intRow Then ListView1.Items(intRow).Selected = True ListView1.Select() End If End Sub Private Sub Button4_Click( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button4.Click ' 選択行特定 Dim intRow As Integer = -1 If ListView1.SelectedItems.Count > 0 Then intRow = ListView1.SelectedItems(0).Index End If If intRow < 0 Then Return ' 選択行参照 System.Diagnostics.Debug.WriteLine( _ ListView1.Items(intRow).SubItems(0).Text & ":" & _ ListView1.Items(intRow).SubItems(1).Text & ":" & _ ListView1.Items(intRow).SubItems(2).Text) ' 再選択 If ListView1.Items.Count > intRow Then ListView1.Items(intRow).Selected = True ListView1.Select() End If End Sub ' ----------------------------------------------------------- // ---------------------------------------------------------- // ListViewの追加/変更(取得)/削除のサンプル(C#.NET/VS2005) private void Form1_Load(object sender, EventArgs e) { // ヘッダー初期化 listView1.Items.Clear(); listView1.FullRowSelect = true; listView1.GridLines = true; listView1.View = View.Details; ColumnHeader column1 = new ColumnHeader(); ColumnHeader column2 = new ColumnHeader(); ColumnHeader column3 = new ColumnHeader(); column1.Text = "Hour"; column2.Text = "Minute"; column3.Text = "Second"; ColumnHeader[] colHeaderRegValue = new ColumnHeader[] {column1, column2, column3}; listView1.Columns.AddRange(colHeaderRegValue); } private void button1_Click(object sender, EventArgs e) { // 選択行特定 int intRow = -1; if (listView1.SelectedItems.Count > 0) { intRow = listView1.SelectedItems[0].Index; } if (intRow < 0) { // 行追加 String[] citm = new String[3]; citm[0] = DateTime.Now.Hour.ToString(); citm[1] = DateTime.Now.Minute.ToString(); citm[2] = DateTime.Now.Second.ToString(); ListViewItem ritm = new ListViewItem(citm); listView1.Items.Add(ritm); } else { // 行挿入 String[] citm = new String[3]; citm[0] = DateTime.Now.Hour.ToString(); citm[1] = DateTime.Now.Minute.ToString(); citm[2] = DateTime.Now.Second.ToString(); ListViewItem ritm = new ListViewItem(citm); listView1.Items.Insert(intRow, ritm); listView1.Select(); } } private void button2_Click(object sender, EventArgs e) { // 選択行特定 int intRow = -1; if (listView1.SelectedItems.Count > 0) { intRow = listView1.SelectedItems[0].Index; } if (intRow < 0) return; // 選択行更新 String[] citm = new String[3]; citm[0] = DateTime.Now.Hour.ToString(); citm[1] = DateTime.Now.Minute.ToString(); citm[2] = DateTime.Now.Second.ToString(); ListViewItem ritm = new ListViewItem(citm); listView1.Items[intRow] = ritm; // 再選択 if (listView1.Items.Count > intRow) { listView1.Items[intRow].Selected = true; listView1.Select(); } } private void button3_Click(object sender, EventArgs e) { // 選択行特定 int intRow = -1; if (listView1.SelectedItems.Count > 0) { intRow = listView1.SelectedItems[0].Index; } if (intRow < 0) return; // 選択行削除 listView1.Items.RemoveAt(intRow); // 再選択 if (listView1.Items.Count > intRow) { listView1.Items[intRow].Selected = true; listView1.Select(); } } private void button4_Click(object sender, EventArgs e) { // 選択行特定 int intRow = -1; if (listView1.SelectedItems.Count > 0) { intRow = listView1.SelectedItems[0].Index; } if (intRow < 0) return; // 選択行参照 System.Diagnostics.Debug.WriteLine( listView1.Items[intRow].SubItems[0].Text + ":" + listView1.Items[intRow].SubItems[1].Text + ":" + listView1.Items[intRow].SubItems[2].Text); // 再選択 if (listView1.Items.Count > intRow) { listView1.Items[intRow].Selected = true; listView1.Select(); } } // ----------------------------------------------------------
相关文章推荐
- VB6.0 直接打印 PDF
- VBA outlook实战#01--自动回复邮件
- 2016年2月22号工作日记
- vbird笔记2016-02-21
- 【VB.NET】实现动态托盘图标
- 【VB.NET】获取文件版本信息
- VBA的一个文本文件操作类
- VBA:文本文件编码互换
- 【VB.net】——整体总结
- vbird笔记2016-02-19
- VBA单元格拷贝
- 用vbs写的自动保存小工具
- 【VB.NET】获取机器名称和IP地址
- vbird笔记2016-02-18
- VB6.0 excel 导入和导出
- 关于 VBA 部分
- 【VBA】批量插入图片
- 【VB.NET】——方法重载和方法重写的区别
- vb计算溢出问题
- win7上使用vb鼠标滚动