3

いくつかのサブアイテムを持つリストビュー コントロールがあります。サブ項目列の 1 つは、レコードに応じて赤、オレンジ、または緑の背景色になります。行が選択されている場合、色付きのサブアイテムが選択色で上書きされるのではなく、背景色を保持するようにします。これは可能ですか?

4

1 に答える 1

3

を に設定ListView1.OwnerDrawTrueます。

ListView1 のDraw...イベント内:

Private Sub ListView1_DrawColumnHeader(sender As Object, e As DrawListViewColumnHeaderEventArgs) Handles ListView1.DrawColumnHeader
    e.DrawDefault = True ' let System draw this element
End Sub

Private Sub ListView1_DrawItem(sender As Object, e As DrawListViewItemEventArgs) Handles ListView1.DrawItem
    e.DrawDefault = True ' let System draw this element
End Sub

Private Sub ListView1_DrawSubItem(sender As Object, e As DrawListViewSubItemEventArgs) Handles ListView1.DrawSubItem
    If e.ColumnIndex = 2 Then ' only this columnindex we take over the drawing job
        e.DrawBackground() ' draw the background color
        e.DrawText()
    Else ' other subitems, let System draw them
        e.DrawDefault = True
    End If
End Sub
于 2013-07-09T10:59:07.253 に答える