ListView コントロールの基本的な操作方法色々(その2) (13個) (SNo.114) 16.バックカラーを設定 17.フォアカラーを設定 18.アイテムを書き換える 19.指定行を選択状態にする 20.クリック毎に降順・昇順に並べ替え 21.トップ行のインデックスを取得 22.指定行をトップ位置に設定する 23.すべて選択状態にする 24.列ヘッダーの幅を自動的にサイズ変更する 25.指定列の項目を右揃えで表示する 26.チェックボックスの表示/非表示 27.フォーカスを失っても選択表示を強調表示のままにしておく 28.項目とサブ項目を含む行と列の間にグリッド線を表示する |
|
使用コントロール | Button11 〜 Button22 ListView1 |
その他条件 | WindowsXP(Vista) Visual Basic 2005(VB2008) |
16.バックカラーを設定
17.フォアカラーを設定 Private Sub Button11_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button11.Click 'バックカラー・フォアカラーを設定 ListView1.Items(0).UseItemStyleForSubItems = False ListView1.Items(0).SubItems(0).ForeColor = Color.White ListView1.Items(0).SubItems(0).BackColor = Color.Green ListView1.Items(0).SubItems(1).ForeColor = Color.Yellow ListView1.Items(0).SubItems(1).BackColor = Color.HotPink 'True の場合、1行全体が対象になる ListView1.Items(1).UseItemStyleForSubItems = True ListView1.Items(1).ForeColor = Color.Red ListView1.Items(1).BackColor = Color.Yellow ListView1.Items(2).UseItemStyleForSubItems = False ListView1.Items(2).SubItems(2).ForeColor = Color.Blue ListView1.Items(2).SubItems(2).BackColor = Color.Gold End Sub |
|
18.アイテムを書き換える Private Sub Button12_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button12.Click 'アイテムを書き換える ListView1.Items(1).SubItems(0).Text = "蚊取 新語" ListView1.Items(1).SubItems(1).Text = "444-0012" ListView1.Items(1).SubItems(2).Text = "東京都 品川区" End Sub |
|
19.指定行を選択状態にする Private Sub Button13_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button13.Click '指定行を選択状態にする ListView1.Items(1).Selected = True ListView1.Select() 'ListView をアクティブにする End Sub |
|
20.クリック毎に降順・昇順に並べ替え Private Sub Button14_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button14.Click 'クリック毎に降順・昇順に並べ替え If ListView1.Sorting = SortOrder.Ascending Then ListView1.Sorting = SortOrder.Descending Else ListView1.Sorting = SortOrder.Ascending End If End Sub |
|
21.トップ行のインデックスを取得 Private Sub Button15_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button15.Click 'トップ行のインデックスを取得 Dim topIndex As Integer = ListView1.TopItem.Index MessageBox.Show(topIndex) End Sub |
|
22.指定行をトップ位置に設定する Private Sub Button16_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button16.Click '指定行をトップ位置に設定する '一旦範囲外に設定する ListView1.EnsureVisible(ListView1.Items.Count - 1) '次にトップ位置に設定したい位置を指定する ListView1.EnsureVisible(5) End Sub |
|
23.すべて選択状態にする Private Sub Button17_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button17.Click 'すべて選択状態にする Dim itm As ListViewItem For Each itm In ListView1.Items itm.Selected = True Next ListView1.Focus() End Sub |
|
24.列ヘッダーの幅を自動的にサイズ変更する Private Sub Button18_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button18.Click '列ヘッダーの幅を自動的にサイズ変更する Dim colHed As ColumnHeader For Each colHed In ListView1.Columns colHed.Width = -2 Next '指定列の幅だけ自動調整する場合 ListView1.Columns(1).Width = -1 End Sub |
|
25.指定列の項目を右揃えで表示する Private Sub Button19_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button19.Click '指定列の項目を右揃えで表示する ListView1.Columns(2).TextAlign = HorizontalAlignment.Right ListView1.Columns(2).Text = "住所 " End Sub |
|
26.チェックボックスの表示/非表示 Private Sub Button20_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button20.Click 'チェックボックスの表示/非表示 ListView1.CheckBoxes = Not ListView1.CheckBoxes 'ListView1.CheckBoxes = True 'ListView1.CheckBoxes = False End Sub |
|
27.フォーカスを失っても選択表示を強調表示のままにしておく Private Sub Button21_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button21.Click 'フォーカスを失っても選択表示を強調表示のままにしておく ListView1.HideSelection = False End Sub |
|
28.項目とサブ項目を含む行と列の間にグリッド線を表示する Private Sub Button22_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button22.Click '項目とサブ項目を含む行と列の間にグリッド線を表示する ListView1.GridLines = True End Sub |