Teilen über


DrawListViewItemEventArgs.State Eigenschaft

Definition

Ruft den aktuellen Zustand des zu zeichnenden ListViewItem 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 des ListViewItem angibt.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die State -Eigenschaft in einer Anwendung verwendet wird, die 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 die ListViewItem zu zeichnende in einem bestimmten Zustand befindet. Diese Eigenschaft stellt nur grundlegende Zustandsinformationen zum Element bereit. Sie können diese Eigenschaft beispielsweise verwenden, um zu bestimmen, ob ein Element ausgewählt, aktiviert oder fokussiert ist. Wenn Sie weitere Informationen benötigen, rufen Sie das Element über die Item -Eigenschaft ab, und überprüfen Sie die Eigenschaften direkt.

Gilt für:

Weitere Informationen