Freigeben über


DrawListViewItemEventArgs.State Eigenschaft

Definition

Ruft den aktuellen Zustand des ListViewItem zu zeichnenden Vorgangs ab.

public:
 property System::Windows::Forms::ListViewItemStates State { System::Windows::Forms::ListViewItemStates get(); };
public System.Windows.Forms.ListViewItemStates State { get; }
member this.State : System.Windows.Forms.ListViewItemStates
Public ReadOnly Property State As ListViewItemStates

Eigenschaftswert

Eine bitweise Kombination von ListViewItemStates Werten, die den aktuellen Zustand der ListViewItem.

Beispiele

Im folgenden Codebeispiel wird die Verwendung der State Eigenschaft in einer Anwendung veranschaulicht, die eine benutzerdefinierte Zeichnung für ein ListView Steuerelement bereitstellt. Im Beispiel zeichnet ein Handler für das ListView.DrawItem Ereignis den Hintergrund für ganze Elemente. In allen Ansichten mit Ausnahme der Detailansicht zeichnet dieser Handler auch den Vordergrundtext. In der Detailansicht wird der Vordergrundtext im ListView.DrawSubItem Ereignis gezeichnet.

Das vollständige Beispiel finden Sie im DrawListViewItemEventArgs Übersichtsreferenzthema.

// 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);
        e.DrawFocusRectangle();
    }
    else
    {
        // 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)
    {
        e.DrawText();
    }
}
' 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)
        e.DrawFocusRectangle()

    Else

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

    End If

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

End Sub

Hinweise

Verwenden Sie diese Eigenschaft, um zu überprüfen, ob sich das ListViewItem Zeichnen in einem bestimmten Zustand befindet. Diese Eigenschaft enthält nur grundlegende Statusinformationen zum Element. Mit dieser Eigenschaft können Sie z. B. bestimmen, ob ein Element ausgewählt, überprüft oder fokussiert ist. Wenn Sie mehr wissen müssen, rufen Sie das Element über die Item Eigenschaft ab, und überprüfen Sie dessen Eigenschaften direkt.

Gilt für:

Weitere Informationen