ListViewItemStates 列挙型


ListViewItem に設定できる状態を表す定数を定義します。Defines constants that represent the possible states of a ListViewItem.

この列挙型には FlagsAttribute 属性があり、メンバー値ではビットごとの組み合わせを使用できます。

public enum class ListViewItemStates
public enum ListViewItemStates
type ListViewItemStates = 
Public Enum ListViewItemStates


Checked 8

項目がチェックされています。The item is checked.

Default 32

項目が既定の状態です。The item is in its default state.

Focused 16

この項目にフォーカスがあります。The item has focus.

Grayed 2

この項目は無効です。The item is disabled.

Hot 64

項目の上にマウス ポインターがあります。The item is currently under the mouse pointer.

Indeterminate 256

項目が中間状態です。The item is in an indeterminate state.

Marked 128

項目がマークされています。The item is marked.

Selected 1

項目が選択されています。The item is selected.

ShowKeyboardCues 512

項目にショートカット キーが表示されます。The item should indicate a keyboard shortcut.

次の例は、 ListViewコントロールのカスタム描画を提供する方法を示しています。The following example demonstrates how to provide custom drawing for a ListView control. この例のコントロールには、グラデーションの背景があります。 ListViewThe ListView control in the example has a gradient background. 負の値を持つサブ項目は、赤の前景と黒の背景を持ちます。Subitems with negative values have a red foreground and a black background.

ListView.DrawItemイベントのハンドラーは、項目全体と列ヘッダー行の背景を描画します。A handler for the ListView.DrawItem event draws the background for entire items and for the column headers row. ListView.DrawSubItemイベントのハンドラーは、テキスト値と、負の値を持つサブ項目のテキストと背景の両方を描画します。A handler for the ListView.DrawSubItem event draws the text values and both the text and background for subitems that have negative values.

コンポーネントContextMenuを使用すると、詳細ビューとリストを切り替えることができます。A ContextMenu component provides a way to switch between the details view and the list. リストビューでは、 ListView.DrawItemイベントのみが発生します。In the list view, only the ListView.DrawItem event is fired. この場合、テキストと背景は両方ともListView.DrawItemイベントハンドラーに描画されます。In this case, the text and background are both drawn in the ListView.DrawItem event handler.

完全な例についてはListView.OwnerDraw 、リファレンストピックを参照してください。For the complete example, see the ListView.OwnerDraw reference topic.

// Draws the backgrounds for entire ListView items.
private void listView1_DrawItem(object sender,
    DrawListViewItemEventArgs e)
    if ((e.State & ListViewItemStates.Selected) != 0)
        // Draw the background and focus rectangle for a selected item.
        e.Graphics.FillRectangle(Brushes.Maroon, e.Bounds);
        // Draw the background for an unselected item.
        using (LinearGradientBrush brush =
            new LinearGradientBrush(e.Bounds, Color.Orange,
            Color.Maroon, LinearGradientMode.Horizontal))
            e.Graphics.FillRectangle(brush, e.Bounds);

    // Draw the item text for views other than the Details view.
    if (listView1.View != View.Details)
' Draws the backgrounds for entire ListView items.
Private Sub listView1_DrawItem(ByVal sender As Object, _
    ByVal e As DrawListViewItemEventArgs) _
    Handles listView1.DrawItem

    If Not (e.State And ListViewItemStates.Selected) = 0 Then

        ' Draw the background for a selected item.
        e.Graphics.FillRectangle(Brushes.Maroon, e.Bounds)


        ' Draw the background for an unselected item.
        Dim brush As New LinearGradientBrush(e.Bounds, Color.Orange, _
            Color.Maroon, LinearGradientMode.Horizontal)
            e.Graphics.FillRectangle(brush, e.Bounds)
        End Try

    End If

    ' Draw the item text for views other than the Details view.
    If Not Me.listView1.View = View.Details Then
    End If

End Sub


この列挙体は、 DrawListViewItemEventArgs.StateプロパティおよびDrawListViewSubItemEventArgs.ItemStateプロパティによって使用されます。This enumeration is used by the DrawListViewItemEventArgs.State and DrawListViewSubItemEventArgs.ItemState properties. 詳細については、 ListView.DrawItemイベントListView.DrawSubItemおよびイベントを参照してください。For more information, see the ListView.DrawItem and ListView.DrawSubItem events.